提交表单后如何重定向到另一个页面

时间:2020-04-12 14:05:26

标签: laravel redirect

在使用我的控制器提交表单后,如何重定向到另一个页面。表单工作正常,但是当我使用这样的代码时,我会得到空白页,如果我使用

return view('leave.signUp'); 

它可以工作,但仍保留在表单页面中,我希望将其重定向到另一个页面。

public function index(Request $request)
{
    if($request->isMethod('POST')){
        $employee = new Employee;
        $employee->lname = $request->input('lname');
        $employee->fname = $request->input('fname');
        $employee->oname = $request->input('oname');
        $employee->employee_id = $request->input('staffId');
        $employee->college = $request->input('college');
        //$employee->salary_level = $request->input('salaryGradeLevel');
        $employee->employee_type = $request->input('staffType');
        $employee->employee_category= $request->input('staffCategory');
        $employee->date_of_first_appointment= $request->input('dateOfFirstAppointment');
        $employee->date_of_last_appointment= $request->input('dateOfLastAppointment');

        $employee->country = $request->input('country');
        $employee->gender = $request->input('gender');
        $employee->title = $request->input('title');
        $employee->marital_status = $request->input('maritalStatus');
        $employee->email = $request->input('email');
        $employee->phone_number = $request->input('phoneNumber');
        $employee->date_of_birth = $request->input('dateOfBirth');
        $employee->place_of_birth = $request->input('placeOfBirth');
        $employee->religion = $request->input('religion');
        $employee->origin = $request->input('stateOfOrigin');
        $employee->local_government_area = $request->input('localGovernmentArea');
        $employee->address = $request->input('address');
        $employee->permanent_address = $request->input('permanentAddress');
        $employee->extra_curicullar_activities = $request->input('extraCuricularActivities');
        $employee->save();

        $nextOfKin = new NextOfKin;
        $nextOfKin->employee_id = $employee->employee_id;
        $nextOfKin->title = $request->input('Ntitle');
        $nextOfKin->surname = $request->input('Nsurname');
        $nextOfKin->firstname = $request->input('Nfirstname');
        $nextOfKin->othername = $request->input('Nothername');
        $nextOfKin->relationship = $request->input('Nrelationship');
        $nextOfKin->email = $request->input('Nemail');
        $nextOfKin->phone_number = $request->input('NphoneNumber');
        $nextOfKin->contact_address = $request->input('Naddress');
        $nextOfKin->save();

        return redirect(route('application'));
    }


}

这是我的web.php

Route::match(['post','get'],'application', 'LeavessController@index');
Route::match(['post','get'],'signUp', 'signUpsController@index');
Route::get('approved', 'LeavesController@getLeaveApproved');
Route::match(['post','get'], 'leaveType', 'LeavesController@getleaveType');
Route::match(['post','get'], 'leaveDepartment', 'LeavesController@getleaveDepartment');
Route::get('allLeave', 'LeavesController@getallLeave');
Route::get('leaveViewDetails', 'LeavesController@getleaveViewDetails');
Route::get('/get-leave-days/{leaveType}', 'LeavesController@getLeaveDays');

2 个答案:

答案 0 :(得分:2)

return redirect()->route('application');

route()的参数是您在路由中使用name(...)定义的参数

https://laravel.com/docs/7.x/redirects#redirecting-named-routes

除此之外,我建议您阅读有关Controllers的laravel文档:https://laravel.com/docs/7.x/controllers#resource-controllers

index仅用于返回数据库条目。要将数据插入数据库,请使用store

答案 1 :(得分:1)

要重定向到“简单” URL,请使用:

return redirect('home/dashboard');

(用您要重定向到的实际URL替换'home / dashboard')


要重定向到命名路由,请使用:

return redirect()->route('login');

(其中login是您的路线名称)

https://laravel.com/docs/7.x/responses#redirects