我已经创建了一个表单页面。当用户填写所有输入字段时,表单页面将进入包含数据的预览页面。预览页面有2个按钮。一个回来,另一个下来。如果用户按下背面 按钮,然后用户可以编辑他/她的信息。如果用户按下下一步,则将数据存储到数据库中,然后再进入完成页面。但是在预览中,“后退”和“下一个”按钮不会进入下一页或上一页。
这是第一个表单页面:
这是提交第一页后的第二个预览页:
这是在预览中单击“下一步”或“后退”按钮之后:
这是控制器
public function preview(PERequest $request) {
$pE = new PE($request->all());
$cIs = $request->c;
return view('kakaku.package_estimates.preview', compact('pE', 'cIs'));
}
public function done(PERequest $request)
{
$input= $request->except('action');
if ($request->action === 'back') {
return redirect()->back()->withInput($input);
}
$pE = new PE();
$pE->fill($request->all())->save();
$pEC = [];
foreach ($request->c as $cI) {
$pEC = [
'p' => $pE->id,
'c' => $cI
];
$pE->pEC()->createMany([$pEC]);
}
return view('k.p_e.done');
}
这是路线
Route::post('p/preview','K\Controller@preview')->name('k.p.preview');
Route::post('ps/done','K\Controller@done')->name('k.p.done');
这是预览页面的提交按钮
{!! Form::submit('abc',['name' => 'server_back_button','class'=>'btn reediting_btn']) !!}
{!! Form::submit ('acb',['name'=>'commit','class'=>'btn estimate_done_btn_top','data-disable-with'=>'bcd']) !!}
答案 0 :(得分:0)
我认为您无需在POST请求后返回视图,而是需要将用户重定向到现有视图。像这样:
public function preview(PERequest $request) {
$pE = new PE($request->all());
$cIs = $request->c;
return redirect('your-kakaku-route')->withSuccess('Some success message');
}
您可能会猜到您的kakaku路线是您的视图的网址。