目标类别[UsersTableSeeder]不存在

时间:2020-06-15 14:10:49

标签: php laravel laravel-5

我正在使用laravel最新版本7。

运行$ python3 -m pdb gen_graph.py /vagrant/gdb.log > /home/vagrant/dwnlds/gdb_graphs/gen_graph.py(11)<module>() -> import os (Pdb) rbreak ? *** SyntaxError: invalid syntax (Pdb) b gen_graph.py:* *** Bad lineno: * (Pdb) b gen_graph.py:. *** Bad lineno: . (Pdb) b gen_graph.py:all *** Bad lineno: all (Pdb) 时出现以下错误:

php artisan db:seed

3 个答案:

答案 0 :(得分:1)

编写播种器后,必须运行composer dump-autoload

确保您的 composer.json 中包含以下代码:

"autoload": {
    "classmap": [
      "database"
    ],
}

答案 1 :(得分:0)

默认的laravel安装没有UsersTableSeeder,您需要通过运行来创建新的种子机

php artisan make:seeder UsersTableSeeder

答案 2 :(得分:0)

Laravel默认没有UserTableSeeder。您可以通过运行以下artisan命令来创建一个:

php artisan make:seeder UsersTableSeeder

运行命令后,您可以在数据库目录中找到播种器。 在播种机的运行功能中,您可以创建所需的用户。

下面的示例适用于我的RoleSeeder,但可能会为合适的解决方案提供一些指导:

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

        $customer = Role::updateOrCreate(['name' => 'customer']);
        $customerPermissions = [
            'view users',
            'create users',
            'edit users',
            'delete users',
            'view machines',
            'view profile',
            'edit profile',
            'view documents',
        ];
  $customer->givePermissionTo($customerPermissions);
}

我之所以使用updateOrCreate函数,是因为在测试中您可能想多次运行播种机。此功能将检查记录是否已存在,并将相应地更新记录