【发布时间】:2016-04-03 15:01:32
【问题描述】:
我有一个具有timestamps() 方法的迁移,然后我有一个种子来播种此表。
Schema::create('mytable', function (Blueprint $table) {
$table->increments('id');
$table->string('title');
$table->timestamps();
});
种子长这样:
DB::table('mytable')->insert([
[
'title' => 'My Awesome Title'
]
]);
当它全部运行时:
php artisan migrate:refresh --seed
item被插入了,但是created_at和updated_at的值都是0000-00-00 00:00:00为什么设置不正确?
这是它创建的列方案:
`created_at` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
`updated_at` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
我想要这些方案:
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
【问题讨论】:
-
使用 Eloquent 模型创建记录,而不是 Fluent 界面,它们应该设置正确。
标签: php laravel eloquent laravel-migrations laravel-seeding