Tôi có một hình thức đăng ký và tôi đang tạo ra một kỷ lục trong cả người dùng và nhận dạng bảng (một danh tính người dùng hasMany)cakephp một hình thức, nhiều mô hình, không hiển thị các thông điệp xác nhận một mô hình của
dạng trông giống như
này<?php echo $this->Form->create('User');?>
<fieldset>
<legend><?php __('Register'); ?></legend>
<?php
echo $this->Form->input('Identity.name');
echo $this->Form->input('Identity.surname');
echo $this->Form->input('User.username');
echo $this->Form->input('User.pass');
echo $this->Form->input('User.pass_confirm', array('type' => 'password'));
echo $this->Form->input('Identity.email');
?>
</fieldset>
<?php echo $this->Form->end(__('Submit', true));?>
Tôi nhận tất cả các thông báo lỗi xác thực cho các trường User.*
nhưng các trường Identity.*
được hiển thị mà không có thông báo.
quy tắc xác nhận:
nhận dạng:
var $validate = array(
'name' => array(
'notempty' => array(
'rule' => 'notempty',
'required' => true,
'message' => 'Your name is required.'
)
),
'surname' => array(
'notempty' => array(
'rule' => 'notempty',
'required' => true,
'message' => 'Your surname is required.'
)
),
'email' => array(
'validateEmail' => array(
'rule' => 'validateEmail',
'required' => true,
'message' => 'The email seems invalid.'
),
'notempty' => array(
'rule' => 'notempty',
'message' => 'You have to enter an email address.'
)
),
);
User: lĩnh vực
var $validate = array(
'pass' => array(
'required' => array(
'rule' => array('custom','/^.*[0-9].*$/i'),
'message'=>'Password must contain numbers'),
'length' => array(
'rule' => array(
'minLength',8),
'message' => 'Password must be at least 8 characters long')
),
'pass_confirm' => array(
'required' => array(
'rule' => 'notempty',
'message' => 'You have to confirm the password'
),
'length' => array(
'rule' => 'validatePassword',
'message'=>'Your passwords don\'t match!')
),
'username' => array(
'unique' => array(
'rule' => 'validateUniqueUsername',
'message' => 'Username is already taken, please choose a different one.'
),
'notempty' => array(
'rule' => 'notempty',
'message' => 'You have to choose a username.'
)
),
);
Bạn đang làm '$ this-> User-> saveAll ($ data);' trong bộ điều khiển của bạn? – Ish
Cảm ơn, bây giờ nó hoạt động tốt;] Tôi không biết tại sao nó đã làm những gì nó đã làm trong vài giây, nhưng nó ok ok;] – Elwhis