【发布时间】:2018-02-09 10:13:05
【问题描述】:
我有几个表单用于创建具有不同验证规则的不同记录。
我的路线(web.php)文件:
Route::group(['middleware' => ['auth']], function () {
Route::get('/home', 'HomeController@index')->name('home');
Route::get('/home/info/create/{id}', 'InfoController@create');
Route::post('/home', 'InfoController@store')->name('home');
Route::get('/home/info/delete/{id}', 'InfoController@delete');
Route::get('/home/odbor/create/{id}', 'OdborController@create');
Route::post('/home', 'OdborController@store')->name('home');
Route::get('/home/odbor/delete/{id}', 'OdborController@delete');
Route::get('/home/zamestnanec/create/{id}', 'ZamestnanecController@create');
Route::post('/home', 'ZamestnanecController@store')->name('home');
Route::get('/home/zamestnanec/delete/{id}', 'ZamestnanecController@delete');
Route::get('/home/program/create/{id}', 'ProgramController@create');
Route::post('/home', 'ProgramController@store')->name('home');
Route::get('/home/program/delete/{id}', 'ProgramController@delete');
});
创建、存储、删除功能: (所有控制器功能相似)
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'
];
}
但是这个: 创建程序请求.php
public function rules()
{
return [
'title' => 'required',
'titul' => 'required',
'length' => 'required',
'forma' => 'required',
'typ'=> 'required',
'description' => 'required',
'fakulta_id' => 'required',
];
}
【问题讨论】:
标签: laravel laravel-5.4