这是我想要使用的代码
<?php echo $form->textField($model,'email_time_created',array('readonly'=>true)); ?>
我想自动将当前时间添加到我的数据库
答案 0 :(得分:0)
我建议将它添加到数据库中,假设你使用的是MySQL,你可以在保存并做这样的事情之前创建一个触发器:
SET NEW.email_time_created=NOW()
如果没有,您可以通过在模型类中添加以下函数来在Yii / PHP级别执行此操作:
public function beforeSave(){
$this->email_time_created = CDbExpression('NOW()'); //Only in MYSQL
return parent::beforeSave();
}
在保存模型之前,它会将列设置为当前值。请注意,它不会在表单中显示,但您可以通过JS或在表单视图中使用php的 date()添加它。
答案 1 :(得分:0)
您也可以在控制器中设置值。
$model->email_time_created= now('Y-m-d H:i:s');
答案 2 :(得分:0)
最简单的方法是将CTimestampBehavior
添加到您的模型中:
public function behaviors(){
return array(
'CTimestampBehavior' => array(
'class' => 'zii.behaviors.CTimestampBehavior',
'createAttribute' => 'create_time_attribute',
'updateAttribute' => 'update_time_attribute',
)
);
}
请参阅API。