首页 > 解决方案 > 我的播种机没有在我的数据库中存储信息

问题描述

我正在尝试为这家公司中的不同角色播种我的角色表,但是当我运行“php artisan migrate:fresh --seed”时,我没有收到错误消息,但我的数据库中没有数据。

<?php

use App\Role;
use Illuminate\Database\Seeder;

class RoleSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        $roles = [
            [
                'name' => 'Admin',
            ],
            [
                'name' => 'Klant',
            ]
        ];

        foreach ($roles as $role){
            Role::insert([
                'name'  => $role['name'],
                'created_at' => now(),
                'updated_at' => now()
            ]);
        }
    }
}

标签: databaselaravelseedinglaravel-seedinglaravel-7

解决方案


您必须将任何自定义播种器添加到database/seeders/DatabaseSeeder.php文件中,因为这是在为数据库播种时默认调用的文件。

class DatabaseSeeder
{
    public function run() 
    {
        $this->call([
            RoleSeeder::class,
        ]);
    }
}

推荐阅读