Laravel播种产量

时间:2016-06-09 09:17:54

标签: php laravel

通常在播种我的数据库时,它会告诉我在命令行播种的是哪个表,但因为我正在向播种器传递一个参数,所以消息已经消失(因为我不知道,调试真的很难当它破裂时它会播种它。

use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;

class SeedTestLargeData extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        Model::unguard();

        // Default

        $this->call(UsersSeeder::class, 'large_test_data');

        Model::reguard();
    }

    public function call($class, $data_filename = null) {
        $this->resolve($class)->run($data_filename);
    }
}

有关如何取回它的想法吗?

2 个答案:

答案 0 :(得分:1)

更改 call()方法,如下所示:

public function call($class, $data_filename = null) 
{
    $this->resolve($class)->run($data_filename);

    if (isset($this->command)) {
        $this->command->getOutput()->writeln("<info>Seeded:</info>".$class);
    }
}

答案 1 :(得分:1)

在原始Seedercall方法中有另外一个声明,请尝试添加它:

public function call($class) {

    //...

    if (isset($this->command)) {
        $this->command->getOutput()->writeln("<info>Seeded:</info> $class");
    }
}