创建一个名为'的dateTime字段的模型,直到',名称并不重要,只是它是一个日期时间。 这是它在模型规则中的验证。
['until', 'datetime', 'format' => 'Y-m-d H:i:s'],
稍后我实例化模型并更新字段后,我收到验证错误。
$model->until = '2017-10-15 14:30:04';
$eventRepeat->validate();
$errors = $model->errors;
$ errors ['直到'] [0]将是' Until的格式无效。'
我没想到会出现这个错误。
答案 0 :(得分:2)
与Yii2 Doc一样
format:要验证的值应该是的日期/时间格式 这可以是ICU手册中描述的日期时间模式。 或者,这可以是以
php:
为前缀的字符串,表示a PHP Datetime类可以识别的格式。
http://www.yiiframework.com/doc-2.0/guide-tutorial-core-validators.html#date
尝试使用
['until', 'datetime', 'format' => 'php:Y-m-d H:i:s'],
答案 1 :(得分:0)
解决!
将格式设置为
php:Y-m-d H:i:s
并使用了格式化程序。
$model->until = Yii::$app
->formatter
->asDatetime(
new DateTime('NOW + 2 weeks'),
'php:Y-m-d H:i:s'
);