2014-06-05 63 views
-1

是在嘗試來驗證我的登記表調用從basemodel驗證方法在我的控制器 方法

public function postSIgnup() 
    { 
     $validation = User::validate(Input::all()); 
    } 

路線

Route :: post('register',array('before =>'csrf','uses'=>'UsersController @ postSignup'));

幫助mi解決此問題

+0

什麼錯誤?你能提供更多的代碼嗎? 請爲您添加刀片模板和您的路線。 – Duikboot

回答

0

您不能只說「驗證我的整個表單」。 發生此錯誤的原因是因爲您嘗試使用Laravel的驗證方法。

基本表單驗證在Laravel

首先要抓住所有的表單數據/內容。

$input = Input::all(); 

其次你可以設置一些規則。這些規則可以在Laravel使用的數組中設置。 確保名稱拼寫正確。 (這些都是妳表單模板中使用的那些。)

$rules = array(
      'real_name' => 'Required|Min:3|Max:80|Alpha', 
      'email'  => 'Required|Between:3,64|Email|Unique:users', 
      'age'  => 'Integer|Min:18', 
      'password' =>'Required|AlphaNum|Between:4,8|Confirmed', 
      'password_confirmation'=>'Required|AlphaNum|Between:4,8' 
    ); 

要使用,你必須先創建重新實例驗證的: 您附上表單輸入和規則,你在上面設置。 當它們匹配時,您可以將表單保存到數據庫中,或者您想要使用它來做什麼。這可能會是這樣的:

$validator = Validator::make($input,$rules); 

酷, 我們現在可以檢查,如果驗證通過或不...

if($validator->fails()){ 
$messages = $validator->messages(); 
return Redirect::to('yourpage')->withErrors($messages); 
}else{ 
// Handle your data... 
} 
相關問題