2017-08-31 3 views
0

私はいくつかのバリデーションルールで異なるレコードを作成しています。Laravelは新しいレコードエラーを作成します

マイルート(web.php)ファイル:

Route::group(['middleware' => ['auth']], function() { 

    Route::get('/home', '[email protected]')->name('home'); 

    Route::get('/home/info/create/{id}', '[email protected]'); 
    Route::post('/home', '[email protected]')->name('home'); 
    Route::get('/home/info/delete/{id}', '[email protected]'); 

    Route::get('/home/odbor/create/{id}', '[email protected]'); 
    Route::post('/home', '[email protected]')->name('home'); 
    Route::get('/home/odbor/delete/{id}', '[email protected]'); 


    Route::get('/home/zamestnanec/create/{id}', '[email protected]'); 
    Route::post('/home', '[email protected]')->name('home'); 
    Route::get('/home/zamestnanec/delete/{id}', '[email protected]'); 

    Route::get('/home/program/create/{id}', '[email protected]'); 
    Route::post('/home', '[email protected]')->name('home'); 
    Route::get('/home/program/delete/{id}', '[email protected]'); 
}); 

クリート、店舗、機能を削除します。 (関数は、すべてのコントローラにsimillarある)

public function create(Fakulta $id) 
{ 
    return view('create.info', compact('id')); 
} 

public function store(CreateInfoRequest $request) 
{ 

    Info::create($request->all()); 

    return redirect('home'); 
} 

public function delete($id) 
{ 
    Info::where('id',$id)->delete(); 
    return redirect('home'); 
} 

そして、私が欲しい時に問題があります新しいものを作成する情報の入力(/ home/info/create)タッチサブミットボタンの後に私は検証エラーを取得します。検証では、ミドルウェアグループ(ProgramController @ store)の最後のコントローラで指定されたファイルを使用していますが、理由はわかりません。しかし、Route :: post( '/ home'、 'InfoController @ store') - > name( 'home');グループの最後の行にあるか、新しいプログラム(/ home/program/create)を作成しても問題ありません。タッチした後

ボタンはいけない

CreateInfoRequest.phpファイルこのファイルを使用している投稿:

簡単

public function rules() 
{ 
    return [ 
     'title' => 'required', 
     'description' => 'required', 
     'event_date' => 'required|date|after:today' 
    ]; 

} 

が、この1: CreateProgramRequest.php

public function rules() 
{ 
    return [ 
     'title' => 'required', 
     'titul' => 'required', 
     'length' => 'required', 
     'forma' => 'required', 
     'typ'=> 'required', 
     'description' => 'required', 
     'fakulta_id' => 'required', 

    ]; 

} 

答えて

1

以下の変更を試してください:

入れルートとして:

Route::post('/home/info/store', '[email protected]')->name('infoStore'); 

代わりにあなたはすべてのために同じポストルートを作成しているので

Route::post('/home', '[email protected]')->name('home'); 

のこれだけルートを変更し、あなたの問題を解決するかもしれそのを試してみてください。

+0

ありがとう、私はすべてのRoute :: postとForm :: openのすべての 'url'を編集します。実行中です – Bando

+0

@Bando嬉しいです! –

+0

@Bando私の答えがあなたの解決策ならば、私の答えにupvoteしてください –

関連する問題