繁体   English   中英

Laravel 5.1模型工厂种子错误

[英]Laravel 5.1 Model Factory Seed Error

我在使用Laravel 5.1的模型工厂突然为数据库播种时遇到了问题。 我的运行情况还不错,现在不起作用了。

我尝试使用Carbon日期格式,但仍然收到错误?

这是错误:

vagrant@homestead:~/Code/jobboard$ php artisan migrate:refresh --seed
Rolled back: 2015_06_10_162857_create_jobs_table
Rolled back: 2015_06_10_162653_create_users_table
Rolled back: 2015_06_10_153026_create_job_types_table
Rolled back: 2015_06_10_152237_create_job_categories_table
Rolled back: 2014_10_12_100000_create_password_resets_table
Migrated: 2014_10_12_100000_create_password_resets_table
Migrated: 2015_06_10_152237_create_job_categories_table
Migrated: 2015_06_10_153026_create_job_types_table
Migrated: 2015_06_10_162653_create_users_table
Migrated: 2015_06_10_162857_create_jobs_table
Seeded: UsersTableSeeder


  [InvalidArgumentException]            
  A four digit year could not be found  
  Data missing   

这是我建立的工厂:

$factory->define('App\Job', function ($faker) {
    return [
    'cat_name' => $faker->word,
    'title' => $faker->sentence,
    'location' => $faker->city,
    'remote' => $faker->boolean($chanceOfGettingTrue = 50),
    'type_name' => $faker->word,

    'description' => $faker->paragraph,
    'how_to_apply' => $faker->paragraph,

    'company_name' => $faker->word,
    'website' => $faker->url,
    'logo' => $faker->imageUrl($width = 50, $height = 50),

    'featured' => $faker->boolean($chanceOfGettingTrue = 50),
    'expires_at' => $faker->dateTime($max = 'now')->format('Y-m-d h:i:s'),
    'agree_terms' => $faker->boolean($chanceOfGettingTrue = 90),

    'user_id' => $faker->numberBetween($min = 1, $max = 10),
    'cat_id' => $faker->numberBetween($min = 1, $max = 9),
    'type_id' => $faker->numberBetween($min = 1, $max = 5),        
    ];
});

这是我的模型:

class Job extends Model
{
protected $table = 'jobs';

protected $primaryKey = 'job_id';

protected $fillable = [
    'job_id',
    'cat_name',
    'title',
    'location',
    'remote',
    'type_name',

    'description',
    'how_to_apply',

    'company_name',
    'website',
    'logo',

    'featured',
    'expires_at',
    'agree_terms',

    'user_id',
    'cat_id',
    'type_id',
];


}

不知道是否有人会对此有所帮助,但是想将解决方案发布到我自己的问题上,以防有人犯同样的错误。

问题是这一行: factory( \\App\\Task::class, 10 )->create( [ 'user_id', $user->id ] );

如果您注意到了,当它应该是一个赋值运算符=>时,我有一个逗号。

应该是: factory( \\App\\Task::class, 10 )->create( [ 'user_id' => $user->id ] );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM