我正在使用CakePHP 2.3.9和CakePHP表单助手来创建注册表单。
我正在为所有字段使用内置表单验证,但我无法使其适用于日,月和年条目。
字段应该是必填字段而不是空字段。我对所有其他字段(正常文本输入和选择)进行了正确的验证。
以下是视图中的输入:
<?= $this->Form->day('dateOfBirth', array('class'=>'date-of-birth', 'empty' => 'day')); ?>
<?= $this->Form->month('dateOfBirth', array('class'=>'date-of-birth','empty' => 'month')); ?>
<?= $this->Form->year('dateOfBirth','2014','1901', array('class'=>'date-of-birth','empty' => 'year')); ?>
以下是模型中当前(不工作)的验证:
'dateOfBirth' => array(
'rule' => 'notempty',
'required' => true
),
答案 0 :(得分:0)
模态验证nonEmpty规则应该是这样的
var $validate = array(
'dateOfBirth' => array(
'rule' => 'notEmpty',
'required' => true
)
);
答案 1 :(得分:0)
使用notEmpty
代替notempty
!
答案 2 :(得分:0)
你也可以这样做,
echo $this->Form->input('dateOfBirth',array('dateFormat' => 'YDM','maxYear'=>date('Y'),'minYear'=>'1901','empty'=>'--Select--','label'=>'Select Birth Date'));
模型规则,
var $validate = array(
'dateOfBirth' => array(
'rule' => 'notEmpty', // or you can use 'rule' => array('date'),
'required' => true,
'message'=>'Please Select BirthDate'
)
);
注意:以上规则验证正确的日期。但问题是你不能为这里生成的下拉列表定义多个空值。相反,它们将被填充为“--Select--”作为所有三个的空值。如果你没关系那么你可以实现相同的