【发布时间】:2012-03-07 20:07:50
【问题描述】:
我有一个表单,其中输入字段是这样的
<div class="row">
<?php echo $form->labelEx($model,'due_date'); ?>
<?php
$this->widget('zii.widgets.jui.CJuiDatePicker',
array(
'attribute'=>'due_date',
'model'=>$model,
'options' => array(
'mode'=>'focus',
'dateFormat'=>'d MM, yy',
'showAnim' => 'slideDown',
),
'htmlOptions'=>array('size'=>30,'class'=>'date'),
)
);
?>
<?php echo $form->error($model,'due_date'); ?>
</div>
我已经将此表格保存在模型文件中。是这样的
protected function beforeSave()
{
$this->due_date=date('Y-m-d', strtotime(str_replace(",", "", $this->due_date)));
return TRUE;
}
CJuiDatePicker 用于保存来自日期选择器的数据。它在保存时以 d mm yy 格式显示日期,但是当我要更新表格时,日期以 yy MM d 格式显示。如果我要更改 beforeSave() 的日期格式,它正在存储日期格式为 0000-00-00 值。没有其他日期值正在存储。有人可以告诉我我在哪里做错了吗?任何帮助和建议都将非常有用。
【问题讨论】:
-
您是否尝试在更改 $this->due_date 的值之后,在保存之前转储它?将其注销并检查那里的值是否正确。
-
我不太明白你在描述什么。你能说得更具体点吗?
-
@Jon,我想他是说当他尝试更新模型时,日期字段以 YYYY-MM-DD 格式显示(填充)。
-
感谢@bool.dev 的简短解释..
-
好吧,在下面试试我的解决方案,顺便说一句!跟进 span>
标签: php mysql datepicker yii