我想在更新或创建时保存以下日期时间,所以我在rules()
中写了这个['createdon','default','value'=>date('Y-m-d H:i:s'),'on'=>'insert' ],
['updatedon','default','value'=>date('Y-m-d H:i:s'),'on'=>'update' ],
我将创建和更新函数中的场景声明为
public function actionCreate()
{
$model = new JobFunctionRole();
$model->scenario = 'insert';
....
....
}
public function actionUpdate($id)
{
$model = $this->findModel($id);
$model->scenario = 'update';
...
...
}
虽然创建日期时间存储完美。但在更新它不存储。问题是什么?任何人?
答案 0 :(得分:1)
这些是用户输入的验证器。您可能正在寻找TimestampBehavior
:
http://www.yiiframework.com/doc-2.0/yii-behaviors-timestampbehavior.html
TimestampBehavior
配置应添加到ActiveRecord
模型中。不是控制器。
答案 1 :(得分:1)
您直接使用_form
<?= $form->field($model, 'createdon')->hiddenInput('value'=>date("Y-m-d")])->label(false) ?>