Morning-Train / foundation by morningtrain

Tools built on top of laravel 5.4
184
0
6
Package Data
Maintainer Username: morningtrain
Maintainer Contact: mail@morningtrain.dk (Morning Train)
Package Create Date: 2017-02-02
Package Last Update: 2017-05-15
Language: PHP
License: MIT
Last Refreshed: 2024-04-18 03:02:46
Package Statistics
Total Downloads: 184
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 0
Total Watchers: 6
Total Forks: 0
Total Open Issues: 0

Foundation

Admin panel and tools built on top of Laravel 5.4.

Installation

    composer require morningtrain\foundation

Setup

  1. Add the following providers and facades to your app config:
    'providers' => [
        ... 
        
        /*
         * Foundation Service Providers
         */

        \morningtrain\Janitor\JanitorServiceProvider::class,
        \morningtrain\Stub\StubServiceProvider::class,
        \morningtrain\Crud\CrudServiceProvider::class,
        \morningtrain\Themer\ThemerServiceProvider::class,
        \morningtrain\Acl\AclServiceProvider::class,
        \morningtrain\Admin\AdminServiceProvider::class,
        
        ...
    ],
    
    'aliases' => [
        ...
        
        /*
         * Foundation Facades
         */

        'Janitor' => \morningtrain\Janitor\Facades\Janitor::class,
        'Crud' => \morningtrain\Crud\Facades\Crud::class,
        'Stub' => \morningtrain\Stub\Facades\Stub::class,
        'Theme' => \morningtrain\Themer\Facades\Theme::class
        
        ...
    ]
  1. Update your auth configuration user provider to from App\User to App\Models\User

  2. Add the following to your existing authentication controllers

    use morningtrain\Admin\Extensions\RedirectsAdmins;

    class ... {
        use RedirectsAdmins;
        
        ...
        /**
         * @return string
         */
        public function redirectPath()
        {
            return $this->redirectAdmin($this->guard()) ?: $this->redirectTo;
        }
    }
  1. Publish janitor with initialize flag
    php artisan janitor:publish --init

Creating a new crud for the admin panel

  1. Run the create command with your desired model name
php artisan crud:new MyModel --config=admin.crud
  1. Configure migration, model and controller

  2. Register the model into the admin configuration (config/admin.php)

    [
        'items' => [
            ...
            App\Models\MyModel::class   => [
                'icon'  => '{material-icon}'
            ]
            ...
        ]
    ]
  1. Update (migrates and refreshes the config)
php artisan admin:update