【问题标题】:How to run seeder under Users module如何在用户模块下运行播种机
【发布时间】:2020-08-28 23:39:26
【问题描述】:

我需要运行 Laravel 6 应用程序 运行迁移后,我看到许多表都是空的,包括用户。

在 modules 子目录中我找到了文件

  • /Modules/Users/Database/migrations/create_users_table.php

    /Modules/Users/Database/seeders/UsersSeeder.php

最后一个文件有默认用户

运行命令很奇怪

php artisan module:list

正如我所料,我看到了模块列表,但没有看到用户模块

所以我在应用程序的根目录中运行时出错:

php artisan module:seed Users
RuntimeException  : Module [Users] does not exists.

我试图只运行这个播种机,但再次出现错误:

$ php artisan db:seed --class=/Modules/Users/Database/seeders/UsersSeeder

   Illuminate\Contracts\Container\BindingResolutionException  : Target class [/Modules/Users/Database/seeders/UsersSeeder] does not exist.

如何在用户模块下运行播种机(我在 php artisan 模块的输出中看不到:列表) ?

谢谢!

【问题讨论】:

  • 你试过composer dump-autoload 吗?

标签: laravel


【解决方案1】:

如果你使用 artisan 命令制作播种机

php artisan make:seeder UsersSeeder  

你得到文件

数据库/种子/UsersSeeder

然后就可以调用了

php artisan db:seed --class=UsersSeeder

代替

php artisan db:seed --class=/Modules/Users/Database/seeders/UsersSeeder

别忘了跑

作曲家转储自动加载

在第一个命令之后

【讨论】:

  • 当然,我已经运行 composer dump-autoload 我不需要创建新的播种机,但我需要在模块 /Modules/Users/Database/seeders/UsersSeeder 中运行现有的播种机,我可以不运行它
  • 在这种情况下,这可能有助于您也可以使用它来运行播种机 stackoverflow.com/questions/48232669/…
猜你喜欢
  • 2018-08-08
  • 1970-01-01
  • 1970-01-01
  • 2023-03-15
  • 2017-03-20
  • 1970-01-01
  • 2021-12-11
  • 2022-11-27
  • 2014-12-19
相关资源
最近更新 更多