Laravel 5.3 db:seed命令根本不起作用

时间:2016-09-15 23:46:41

标签: php laravel seeding laravel-5.3 laravel-seeding

我按照书本做了所有事情:

  1. 安装了新的Laravel 5.3.9应用程序(我的所有非新鲜应用程序都会产生相同的错误)

  2. 运行list_of_key

  3. 为新表创建迁移 `php artisan make:migration create_quotations_table --create = quotations

    fun.results
  4. 然后我运行php artisan make:auth

  5. 然后我定义了一个新的种子Schema::create('quotations', function (Blueprint $table) { $table->increments('id'); $table->string('text'); // my problem persists even with the below two columns commented out $table->integer('creator_id')->unsigned()->index('creator_id'); $table->integer('updater_id')->unsigned()->index('updater_id'); $table->softDeletes(); $table->timestamps(); });

  6. 添加简单插入后文件的完整内容:

    php artisan migrate
    1. 然后我运行php artisan make:seeder QuotationsTableSeeder
    2. 问题

      它根本不起作用。没有反馈,日志文件中没有错误。 探针在我的本地环境(Win7,最新的WAMP服务器)中都存在 和我的数字海洋VPS由Ubuntu 16.04驱动。 我在几个单独的应用程序中采取了上述所有步骤 - 没有结果。也在Laragon 2.0.5服务器下。

      我尝试了什么

      <?php use Illuminate\Database\Seeder; class QuotationsTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { DB::table('quotations')->insert([ 'text' => str_random(10), ]); } } as suggested here

      php artisan db:seedphp artisan optimize也没有带来任何结果

      我也尝试按照官方文档示例播种 - 失败。

      我将composer dump-autoload添加到种子文件中 - 仍然没有结果。

      要做

      帮助!他们怎么不工作?

2 个答案:

答案 0 :(得分:43)

你是否在Employee.Employee.emp_det班级内打电话给你的播种机?这样:

<强>数据库/种子/ DatabaseSeeder.php

DatabaseSeeder

或者,在使用class DatabaseSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { $this->call(QuotationTableSeeder::class); } } 命令时添加--class选项,这样:

php artisan db:seed

创建或删除播种机后,请不要忘记运行以下命令:

php artisan db:seed --class="QuotationTableSeeder"

答案 1 :(得分:0)

如果其他人同时遇到迁移和播种问题,请尝试

php artisan migrate:fresh --seed

为我工作。