我知道下面给出的电子邮件地址。所以,建议我为手机号码。如何使用CakePHP 3.x添加唯一的手机号码?
public function buildRules(RulesChecker $rules)
{
$rules->add($rules->isUnique(['email']));
return $rules;
}
我知道下面给出的电子邮件地址。所以,建议我为手机号码。如何使用CakePHP 3.x添加唯一的手机号码?
public function buildRules(RulesChecker $rules)
{
$rules->add($rules->isUnique(['email']));
return $rules;
}
你可以只复制你有什么检查email
地址是唯一相关的移动领域。例如,如果你的领域是phone
: -
public function buildRules(RulesChecker $rules)
{
$rules->add($rules->isUnique(['email']));
$rules->add($rules->isUnique(['phone']));
return $rules;
}
你可以阅读更多关于在official docs验证独特的领域。
你可以这样做:
1.
$validator
->notEmpty('phone',__('Please enter phone.',true))
->add('phone',[
'phoneUniqueCheck'=>[
'rule' => 'phoneUniqueCheck',
'provider' => 'table',
'message' => 'phone id already exists.'
]
]);
public function emailUniqueCheck($value,$context){
$phone = $context['data']['phone'];
$data = $this->find('all')->where(array('phone' => $phone))->first();
if(empty($data)){
return true;
}
return false;
}
2.
$validator->requirePresence('phone',true,__('Please enter phone'))
->add('phone', 'unique', ['rule' => 'validateUnique', 'provider' => 'table','message' => 'Phone id already exists.']);
感谢您的帮助 –
为什么您downvote我的答案,如果我的回答是正确的,然后PLZ接受 –
我不会downvote –
这是非常有用的。谢谢 –
@ a.shah如果它有助于解决您的问题,请接受它作为答案。 – drmonkeyninja