想象一下具有如下属性的雄辩模型:
class Campaign extends Eloquent
{
protected $softDelete = true;
protected $dates = ['started_at', 'ended_at'];
}
可以推断,该表具有created_at_updated_at和deleted_at的标准时间戳。它还有两个 date 字段:started_at和ended_at。在我的应用程序的某处,我正在尝试更新两个额外的日期:
$campaign->started_at = Carbon::parse(Input::get('activate-start', '+1 week'))->toDateString();
var_dump($campaign->getOriginal('started_at'), $campaign->started_at);
var_dump($campaign->getDirty());
第一个var_dump将原始值与当前值进行比较,显示值的差异。但是,getDirty()返回一个空数组。因此,$campaign->save()
在不更新数据库的情况下返回true。有没有人遇到过这个?
答案 0 :(得分:1)
我认为通过更改$ guarded属性可以解决问题。我现在是:
protected $guarded = ['id', 'created_at', 'updated_at', 'deleted_at'];