public function validateRecipient()
{
if(!$this->hasErrors()){
$data=Member::find()->where(['username'=>$this->recipient])->one();
if(is_null($data)){
$this->addError('recipient','没有该收件人,请重新确认');
}
}
}
为什么这句话它错误之后没有提示..要是输入错误的信息它不会走到后面的save(),但是就是没有提示.应该要怎么弄才可以在form表单提示错误信息?
关键是这句,如果验证错误,那么会把信息报给
所以,要想form有提示,你得保证你表单中有这个字段。
debug调试一下这段代码
有两种解决方法:
1、用验证规则验证
在模型的验证规则中加入 [‘recipient’, ‘exist’, ‘message’ => ‘没有该收件人,请重新确认’],
2、使用的自定义验证规则
[‘recipient’, ‘validateRecipient’],
public function validateRecipient($attribute, $params)
{
}