【一点经验分享】Yii2 - custom validator not work 自定义验证无效的解决方法
有个项目正在使用Yii2开发,因为是第一次使用2代Yii,也算是不停的摸索。
昨天就遇到一个问题,谷歌也帮不上忙,就是自己在model里写的自定义validator不生效。
原本以为只是自定义无效,终于在使用unique这个yii原生validator时发现,问题的答案就是使用ajax validation。
为什么自定义validator和原生unique都无效呢?因为这些代码是保存在服务器上的,不使用ajax怎样能获取验证结果呢?
yii2中的controller也必须
useyii\web\Response;useyii\widgets\ActiveForm;
至于action里则应该使用如下语句,来自于yii2官方doc
if(Yii::$app->request->isAjax&&$model->load(Yii::$app->request->post())){Yii::$app->response->format=Response::FORMAT_JSON;returnActiveForm::validate($model);}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。