2016-09-05 30 views
0

我有一個表語言與語言字段和圖像字段。 CRUD的CRU很好,但是刪除會觸發默認驗證。我在請求中定義了兩個驗證文件。一是AddNewLanguageRequest包含:Laravel 5.3 - 覆蓋默認的刪除驗證

public function rules() 
    { 
     return [ 

       'language' => 'required|max:255|min:5', 
       'image' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048' 
} 

,另一個是EditLanguageRequest包含

public function rules() 
    { 
     return [ 

      'language' => 'required|max:255|min:5', 
      'image' => 'image|mimes:jpeg,png,jpg,gif,svg|max:2048' 

     ]; 
    } 

我已經被刪除,顯示語言和圖像的形式,並且確認按鈕,所以這種形式的呼叫路線:

{!! Form::open(array('url'=>'deletelanguage/'.$lang->id)) !!} 

路由調用LanguageController

public function delete(Requests\EditLanguageRequest $request){ 
     //is there an image? If so delete it 
     $lang = Language::find($request->id); 
     if (isset($lang->image)) 
      { 
       if (Storage::exists($lang->image)) 
        {Storage::delete($lang->image);} 
      } 
     $lang->delete(); 
    } 

當我嘗試它時,我從EditLanguageRequest中得到驗證失敗。

如何「關閉」刪除操作的驗證?

回答

0

的問題是在這條線:

public function delete(Requests\EditLanguageRequest $request 

這是當然的調用請求,從而將其更改爲

public function delete(Request $request) 

解決它