今回やったこと
- Adminページ作成
- モデル作成
- Seedデータ挿入
Adminページ作成
参考資料
パッケージ選定
最近更新されている、新しいものにしようということでLaravel-adminを選定。
Github
Document
インストール
composer.jsonに記述を追加。
バージョンは1.5.*。
で、下記を実行。
php composer require
php artisan vendor:publish --provider="Encore\Admin\AdminServiceProvider"
php artisan admin:install
app/Adminが増えてたり色々増える。
php artisan serve
でローカルサーバー立てて、localhost:8000/adminにアクセスするとログインページ表示されるはず。
CRUD処理設定
公式DocのQuick Start見ながら進める。
謎にadmin消えてユーザー0になって困った時
php artisan db:seed --class=Encore\\Admin\\Auth\\Database\\AdminTablesSeeder
モデル作成
参考資料
モデルファイル作成
php artisan make:model User
みたいな感じでモデルファイルを作成。
このコマンドだとapp/User.phpが出来る。
このファイルにカラムの設定とかは要らないっぽい。
モデルの扱い方はまた今度。
Seedデータ挿入
幾つか書き方あるっぽいが、たくさん作るのに便利そうなFactoryファイルを用いることにする。
参考資料
Database: Seeding
Database Testing - Write Factory
Factoryファイル作成
例によってartisanコマンドでファイル生成。
php artisan make:factory PostFactory --model=Post
これだとdatabase/factories内にPostFactory.phpが生成。
最初からあるModelFactory.phpはこんな感じだよっていうサンプル。
で、Doc通りにFactory雛形(?)を作成。
Fakerでダミーのデータを入れれるので使う時は下を参考に欲しいものを使う。
Faker
Seedファイルを生成
php artisan make:seeder UsersTableSeeder
でSeedファイルを生成。
<?php
use Illuminate\Database\Seeder;
class CategoriesTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
factory(App\Category::class, 50)->create();
}
}
こんな感じに書いた。これだと50個のダミーデータ。
Seeding
php artisan db:seed
でシートデータ挿入。
ミスった時はデバッグしてから
php artisan migrate:refresh --seed
で元通り。