[英]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.