Laravel 5.* 执行seeder命令出现错误的解决方法

最近在使用Laravel开发一个项目,测试中需要增加数据库基础数据动作,当第一次执行完`php artisan db:seed` 后,增加新的seeder文件时执行会报错。错误信息如下`[ReflectionException] Class ***TableSeeder does not exist`

首先我已经确保新的seeder文件和全局database seeder是在同一个seeder目录下了,仍然会出现这个问题的原因是 我们需要清理下之前执行生成的classmap信息。

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

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

推荐阅读更多精彩内容

  • 前言 终于有那么点时间能将Laravel 5的一些好的实践总结出来,希望为普及Laravel和新的PHP编程思想出...
    该叶无法找到阅读 5,433评论 2 47
  • Laravel框架笔记 一、 composer的安装: 1.Composer是什么?是 PHP 用来管理依赖(de...
    李景磊阅读 360评论 0 4
  • 原文链接 必备品 文档:Documentation API:API Reference 视频:Laracasts ...
    layjoy阅读 6,767评论 1 118
  • 建立项目:composer create-project laravel/laravel xcblog compo...
    lxc0522阅读 37评论 0 0
  • 城市夜归的人呐,你要去哪? 我做过很多种假设,最想要的,是回到过去,不多不少,十年就好。 十年前,捡到了一片形状好...
    柒小如阅读 37评论 0 1