php – 如何在Laravel中提交表单后重定向确认页面?

我有一个表格.这个动作是:

<form action="{{url('career/save/{id}')}}" method="POST" enctype="multipart/form-data">

路线:

Route::group(['prefix' => 'career'], function () {
    Route::get('apply', ['as' => 'addApplicant', 'uses' => 'ApplicantController@create']);
    Route::post('save', ['as' => 'saveApplicant', 'uses' => 'ApplicantController@store']);
    Route::get('confirmation/{id}', ['as' => 'confirmationMsg', 'uses' => 'ApplicantController@show']);
});

控制器:

public function store(Request $request)
{
    $applicant = new Applicant();
    $applicant['name'] = $request->input('name');
    $applicant['sex'] = $request->input('sex');
    $applicant['marital_status'] = $request->input('marital_status');
    $applicant['date_of_birth'] = $request->input('date_of_birth');
    $applicant['email'] = $request->input('email');

    $applicant->save();
    \Session::flash('flash_message','Application has been successfully submitted.');
    return redirect(route('confirmationMsg'));
}
public function show($id)
{
    $applicantData = Applicant::whereId($id)->first();
    return view('applicant.confirmation',compact("applicantData"));
}

如果每个申请人/每个人都提交此表单,那么它将创建一个ID并在确认页面中将其重定向到他提交的数据.

但提交后我得到了:

../public/career/save/%7Bid%7D

我可以手动输入../public/career/confirmation/14和它的工作完美.现在我想要提交表格后,它会重定向这个../public/career/confirmation/ID. ID是动态的.我怎么能这样做?提前致谢.

解决方法:

你可以通过这样做在提交后重定向

return redirect() – > to(‘career / confirmation /’.$id); //传递你的动态ID

或通过这样做

return redirect() – > route(‘confirmationMsg’,[‘id’=> $id]); //传递你的动态ID

这样做,$id = $applicant-> id;

替换你的这条线

return redirect(route(‘confirmationMsg’));用这个

return redirect() – > route(‘confirmationMsg’,[‘id’=> $id]); //传递你的动态ID

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...