Quantcast
Channel: laravel5.8タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 87

laravel マイグレート、シード、MVC 備忘録

$
0
0

ファクトリーファイル役割

カラムに挿入する具体的なデータを定義する。

シードファイル役割

ファクトリーで作成したデータの何件DBに挿入するかを決める

DatabaseSeeder.phpファイルの役割

どのデータをシードするかを決める。

モデルファイルのシードでの役割

DBと接続したり、コントローラー使うスコープをここで、定義したりする。
LaravelのModelには命名規則がある。

例えば、テーブル名がusersの場合、Model名はUserになります。

テーブル名を単数形にしたものがModel名となり、自動的にテーブルを操作することができるようになる。

この命名規則は絶対的なものではなく、テーブル名を明示的に指定することもできる。
参考: https://udemy.benesse.co.jp/development/web/laravel-model.html


database/seeds/DatabaseSeeder.php

<?phpuseIlluminate\Database\Seeder;classDatabaseSeederextendsSeeder{publicfunctionrun(){// $this->call(UsersTableSeeder::class);$this->call(BookmarksTableSeeder::class);//★ここ}}

database/seeds/BookmarksTableSeeder.php

<?phpuseIlluminate\Database\Seeder;classBookmarksTableSeederextendsSeeder{/**
   * Run the database seeds.
   *
   * @return void
   */publicfunctionrun(){factory(App\Models\Bookmark::class,100)->create();//ここ★}}

DBとカラムを作成し、

php artisan migrate

上記4つをやって、シードコマンドを実行するとカラムにデータが保存される。

php artisan db:seed

おまけ

php artisan make:model Models/Bookmark -a

このコマンドでモデルとファクトリー、テーブルが同時に作成される
テーブルは複数形になっている。


Viewing all articles
Browse latest Browse all 87

Trending Articles