欢迎光临
我们一直在努力

Laravel执行seeder命令出现class *** does not exist

执行填充文件:php artisan db:seed –class=RolesAndPermissionsSeeder

发现执行失败:错误信息:ReflectionException  : Class RolesAndPermissionsSeeder does not exist

提示我这个填充类不存在,挺奇怪的。

我已经确保

seeder文件和全局database seeder是在同一个seeder目录下
在DatabaseSeeder的run方法里
$this->call(RolesAndPermissionsSeeder::class)
仍然会出现这个问题的原因是 我们需要清理下之前执行生成的classmap信息。

在控制台中执行composer dump-autoload,然后再执行php artisan db:seed.

Ok,完美解决。

接下来我们应该注意:

在实际产品中,seeder一般用于产生基础数据,那么在线上环境中,我们不可以再直接执行全部的seeder,可以选择使用php artisan db:seed--class=UserTableSeeder来针对独立的seeder文件进行操作。

具体可以参考文档https://laravel.com/docs/5.7/seeding

赞(1)
版权归原作者所有,如有侵权请告知。达维营-前端网 » Laravel执行seeder命令出现class *** does not exist

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址