我的問題是,我的表單驗證失敗,但方法$this->validate($request, $rules, $messages)
不會重定向-> back()
,而是重定向到根頁面/
。流明 - 驗證方法重定向到網站的根目錄
驗證失敗時,是否有可能改變重定向?
我的問題是,我的表單驗證失敗,但方法$this->validate($request, $rules, $messages)
不會重定向-> back()
,而是重定向到根頁面/
。流明 - 驗證方法重定向到網站的根目錄
驗證失敗時,是否有可能改變重定向?
我昨天碰到了同樣的問題,解決的辦法是讓自己的驗證實例:
#be sure to include the Validator class
use Validator;
#in your function (if input is coming from a form)
v = Validator::make($request->all(), ['fieldname1', 'fieldname2']);
if ($v->fails()) {
#return json error
return response()->json(['success' => false, 'errors' => $v->errors()]);
#other return could be
#return view('page/name', 'errors' => $v->errors());
}
// process code here since we've passed validation
在trait ValidatesRequests
有一個buildFailedValidationResponse
功能,在驗證失敗時它不是一個Ajax請求被重定向(和或json請求)
在它調用$this->getRedirectUrl()
的方法中,因此請確保此功能訪問的任何屬性都已正確設置