我有一个 start_date 字段,它将保留数据保存(未更新)时的当前时间戳。这样的行为:
$this->addBehavior('Timestamp', [
'events' => [
'Model.beforeSave' => [
'start_date' => 'new'
]
]
]);
但我认为没有填写当前的时间戳,因为我收到了这个错误:
'start_date' => [
(int) 0 => 'This field is required'
]
答案 0 :(得分:0)
您已订阅Model.beforeSave
事件,因此时间戳会在保存之前立即生成,即在验证和规则检查后,因此错误。
如果您因任何原因需要验证此字段(通常不需要),请订阅Mode.beforeRules
event并使用rules checker验证该字段。
答案 1 :(得分:0)
由于您已确保附加行为提供了start_date
,因此请从验证规则中删除该字段。这就是我至少做过的事情。