Laravel 为什么php artisan迁移fresh--种子不能正常工作

Laravel 为什么php artisan迁移fresh--种子不能正常工作,laravel,Laravel,各位开发人员,我对php artisan migrate:refresh--seed与php artisan db:seed之间的关系有疑问,我只是想问一下,因为我对php artisan migrate:refresh--seed有问题,但是当我使用php artisan db::seed时,它工作正常 现在,我在播种机上创建的数据没有播种到表中。我不知道问题是从哪里来的 播种:车辆模型播种机 已播种:车辆模型播种机(0秒) 这是我的车辆模型播种机类 <?php use Ill

各位开发人员,我对php artisan migrate:refresh--seed与php artisan db:seed之间的关系有疑问,我只是想问一下,因为我对php artisan migrate:refresh--seed有问题,但是当我使用php artisan db::seed时,它工作正常

现在,我在播种机上创建的数据没有播种到表中。我不知道问题是从哪里来的

播种:车辆模型播种机

已播种:车辆模型播种机(0秒)

这是我的车辆模型播种机类

    <?php

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Str;
use App\Vehicle;
use App\VehicleModel;

class VehicleModelsSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        //

        $vehicles = Vehicle::all();
        foreach($vehicles as $vehicles_data) {
            VehicleModel::forceCreate([
                'name' => Str::random(5),
                'vehicle_id' => $vehicles_data->id
            ]);

        }
        

    }
}

默认情况下,
db:seed
命令运行
Database\Seeders\DatabaseSeeder

有两种解决方案:

1。您需要在默认播种机的运行方法中调用其他播种机。

database/seeders/DatabaseSeeder.php

public function run()
    {
        $this->call([
            VehicleModelsSeeder::class
        ]);
    }
然后:

2。您可以使用
--class
标志指定要运行的播种机,但在这种情况下,您需要分别运行
刷新
迁移
命令:

php artisan migrate:refresh
php artisan db:seed --class:VehicleModelsSeeder
更多信息:

php artisan migrate:refresh
php artisan db:seed --class:VehicleModelsSeeder