Laravel 5.3 不能运行 db:seed ?

Environment

  • Ubuntu 16.04
  • PHP 7.0
  • Laravel 5.3.18

Problem

Laravel 5.3 运行 db:seed 命令的时候并没有调用 DatabaseSeeder 文件:

<?php

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        factory(App\User::class, 50)->create();
    }
}

I have tried

php artisan migrate:refresh --seed

php artisan optimize
composer dump-autoload
php artisan clear-compiled

tinker 下调用 factory 可以正常创建。

所以有点搞不明白了 :)

Remote. Open. Engineer.
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 4
leo

比较神奇,没有遇到过,给个debug的思路,在run()方法的开始和结尾各自加一个dump,再执行一下db:seed看看两个是不是都输出了

7年前 评论
Lonexw

@leo Fixed

是我比较奇葩的开发环境的问题,是代码同步的问题 :)

7年前 评论

我也碰到这个问题,使用一个扩展包,安装完执行 php artisan db:seed ,但是没有报错也没有填充过程,查看数据库表也实际上没有填充,这是怎么回事?

7年前 评论
Lonexw

@纸牌屋弗兰克 应该还是自己代码或者配置的问题,我之前是应为开发环境的问题;

7年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!