Laravel-admin 独自メニュー項目

Laravel-admin は管理画面GUIで独自メニューを追加編集できるけど、
artisan migrate:refresh とかすると独自メニューは消えてしまい、
artisan admin:install でも復活しないので、またGUIでやり直しになってしまう。
独自メニューも artisan db:seed で生成できるようにしたい。

まず独自メニュー追加後、以下のように admin:export-seed で自分のシーダーに AdminTablesSeeder をエクスポート。

$ php artisan admin:export-seed
Admin tables seed file was created: /database/seeds/AdminTablesSeeder.php
Use: php artisan db:seed --class=AdminTablesSeeder

そして DatabaseSeeder.php で AdminTablesSeeder を実行するコード追加。

$this->call(AdminTablesSeeder::class);

とりあえず $ composer dump-autoload 実行。
そして $ php artisan migrate:refresh –seed 実行。管理画面のメニューは元通りに・・ならない。

そもそもLaravel-admin既定ユーザー(admin)が復活しない。
さらに既定メニューのRole/Permissionあたりもよくわかんないけどおかしい・・。

とりあえず、以下ファイルが Laravel-admin の既定シーダーなので、これを適当に真似して自分の AdminTablesSeeder に入れる。

vendor/encore/laravel-admin/src/Auth/Database/AdminTablesSeeder.php

そして $ php artisan migrate:refresh –seed で Laravel-admin テーブルデータがうまく復活することを確認。