您好,登錄后才能下訂單哦!
有個項目正在使用Yii2開發,因為是第一次使用2代Yii,也算是不停的摸索。
昨天就遇到一個問題,谷歌也幫不上忙,就是自己在model里寫的自定義validator不生效。
原本以為只是自定義無效,終于在使用unique這個yii原生validator時發現,問題的答案就是使用ajax validation。
為什么自定義validator和原生unique都無效呢?因為這些代碼是保存在服務器上的,不使用ajax怎樣能獲取驗證結果呢?
yii2中的controller也必須
use yii\web\Response; use yii\widgets\ActiveForm;
至于action里則應該使用如下語句,來自于yii2官方doc
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) { Yii::$app->response->format = Response::FORMAT_JSON; return ActiveForm::validate($model); }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。