我在一个 yii2-grid - GridView
kartik\datecontrol\DateControl
我已经使用了 DateControl
来选择当前的日期-时间。
下面是我试图在输入框中查看默认的DateTime的代码,但在输入框中没有看到任何值。
<?PHP
$form->field($model,'last_date')->widget(DateControl::classname(), [
type'=>DateControl::FORMAT_DATETIME,
pluginOptions' =>[
defaultDate' => date('dd-MM-yyyy hh:mm:ss a')
]
]);
?>
我已经尝试了
date('d-m-Y h:i:s A')
也是,但它仍然显示空的输入框。
另外,试着给这个属性赋予模型的值。
$model->last_date = date('dd-MM-yyyy hh:mm:ss a');
但这并不影响输入,输入框显示为空。
所以帮助我得到默认的日期时间显示在输入框中。
按照这个链接,我得到了在输入中显示当前日期的问题的答案。
saveSettings
以下是最终的工作代码
if(empty($model->expiry_date)){
$model->expiry_date = date('Y-m-d H:i:s');
}
echo $form->field($model,'expiry_date')->widget(DateControl::classname(), [
'type'=>DateControl::FORMAT_DATETIME
]);
而这里是配置中设置的日期。web.php
// format settings for saving each date attribute (PHP format example)
'saveSettings' => [
Module::FORMAT_DATE => 'php:U', // saves as unix timestamp
Module::FORMAT_TIME => 'php:H:i:s',
Module::FORMAT_DATETIME => 'php:Y-m-d H:i:s',
],