2016-05-23 104 views
0

有一些我不明白。 當通過輸入到控制器我有它laravel驗證,例如:laravel驗證,如果驗證通過它會返回什麼?

 $this->validate($request, [ 
      'user_id' => 'required', 
      'post_id' => 'required', 
      'body' => 'required' 

     ]); 

現在的觀點是,我要在數據庫插入之前進行的條件?如果是的話如何?我的意思是(僞代碼)

if data is validated { store in DB } 

或將validate得到阿霍德的一切,只是停止,如果誤差修改被發現?

回答

0

如果驗證失敗,錯誤會被推入會話,用戶將被重定向到previus位置。

如果驗證進行順利,將執行$this->validate(...)之後的代碼。

+0

確定什麼,如果你是返回一個JSON的腳本? – Chriz74

0

試試這個:

// define rules 
    $rules = array(
    'user_id' => 'required', 
    'post_id' => 'required', 
    'body' => 'required' 
    ); 

$validator = Validator::make(Input::all(), $rules); 

if ($validator->fails()) 
{ 
    // something 
    // return Redirect::back() 
    //  ->withErrors($validator) // send back all errors to the login form 
    //  ->withInput(); 
} 
else 
{ 
    // something 
    $data->save(); // save your data 
}