我有这样的验证规则,生成错误信息
$validator->add('cc_expires',[
'checkExpiryDate'=>[
'rule'=>'checkExpiryDate',
'provider'=>'table',
'message'=>__('BS_INVALID_CC_EXPIRY_DATE')]]);
但是此$this->Form->year()
控件
echo $this->Form->year('cc_expires', [ 'options' => $year_option,'error' =>true]);
我必须添加
<?php print_r($order->errors() ['cc_expires'] ['checkExpiryDate'] );?>
打印出错误消息,这很难看,
无论如何,控件$this->Form->year()
打印出错误信息,谢谢
答案 0 :(得分:1)
应使用year()
方法手动打印错误,您可以使用FormHelper::control()
测试是否存在错误。
话虽这么说,像FormHelper::input()
这样的单独控制方法不会检查错误,它们只会渲染控件。如果您想要自动错误检查和显示,那么您需要使用error
(CakePHP 3.4之前的control()
),它包装了该任务(echo $this->Form->control('cc_expires', [
'type' => 'year',
'label' => false,
'options' => $year_option
]);
选项btw是{{import x
选项的选项1}}方法):
from x import y
另见