我正在运行一个处理一段时间内输入的用户数据的应用程序。为此,我需要更改用于播种数据库的数据中的时间戳。我有一个不错的循环来做,但是问题是,当我运行数据库种子时,什么也没发生。我想知道是否有Laravel特定的东西可以防止这种情况发生,如果可以的话如何解决。
$record->created_at = $fakeCreateDate->format('Y-m-d H:i:s');
$record->save();
是的,created_at和updated_at是“特殊”的。Laravel在创建时为created_at设置时间戳,在更新时为updated_at设置时间戳。
http://laravel.com/docs/eloquent#timestamps
您可以通过在模型中执行此操作来关闭它们
public $timestamps = false;
默认情况下,Eloquent将自动维护数据库表中的created_at和updated_at列。只需将这些timestamp列添加到表中,Eloquent就会处理其余的事情。如果您不希望Eloquent维护这些列,请在模型中添加以下属性
定义模型后,就可以开始在表中检索和创建记录了。请注意,默认情况下,您将需要在表上放置updated_at和created_at列。如果您不想自动维护这些列,请将模型上的$ timestamps属性设置为false。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句