2016-03-01 50 views
0

我正在學習Laravel 5.2。我正在嘗試做一個表單驗證example.Have閱讀文檔的驗證和我的代碼使用創建和存儲方法使用驗證請求類正在工作。現在我試圖用相同的方法同時執行POSTGET。我創建了我request類,我的規則方法定義爲這個Laravel 5.2,爲POST方法設置驗證,而不是GET

public function rules() 
    { 
     if($this->method() == 'POST'){ 
      return [ 
       'first_name' => 'required' 
      ]; 

     }else{ 
      return []; 
     } 
    } 

public function create(myRequest $request){ 
//save and display the data 
} 

,但是當我打開我的方法,我得到一個空白頁說我的控制器方法聲明,forbidden 。我嘗試爲GET返回null值,但它不起作用。

Argument 2 passed to Illuminate\Validation\Factory::make() 
must be of the type array, null given 

不可能做這樣的事情嗎?

回答

0

如果你在你的myRequest驗證文件中看到,你會發現這個方法。

public function authorize() 
{ 
    return false; 
} 

這是,只允許那些誰是正宗本節/後用戶/發表評論等,所以這個改變

public function authorize() 
{ 
    return true; 
} 

還有一兩件事對您的信息,這是不使用GET方法通過驗證請求對象的正確方法,其始終使用POST/PUT/Delete方法傳遞