:::
13-1 建立Seeder快速填充資料
- Seeder 就是測試資料,可以利用Artisan的方式來快速產生測試資料
- seeder 檔一般以「複數+TableSeeder」方式命名,當然,這不是強制性的。
- 建立方法:
php artisan make:seeder TopicsTableSeeder - 最後會產生
\專案\database\seeds\TopicsTableSeeder.php,我們加入第15行的部份,也就是把剛剛在tinker的指令拿到這裡來。<?php use Illuminate\Database\Seeder; class TopicsTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { // 每次建立 20 個題目 factory(\App\Topic::class, 20)->create(['exam_id' => 3]); } } - 執行之,每執行一次就會產生20個新題目:
php artisan db:seed --class=TopicsTableSeeder - 如果seed檔要改名,則記得改完後重新手動執行以下語法,以產生新的autoload檔案
composer dump-autoload -
autoload檔案在:
\專案\vendor\composer\autoload_classmap.php -
詳情可參考:https://laravel-china.org/docs/laravel/5.6/seeding/1401
13. 利用模型工廠產生隨機題目
