使用Laravel-5.8,我尝试从以下途径出发:
public function manager_employee_goal($id)
{
if (! Gate::allows('appraisal_goal_review')) {
return abort(401);
}
$userCompany = Auth::user()->company_id;
$userEmployee = Auth::user()->employee_id;
$identities = DB::table('appraisal_identity')->select('id')->where('company_id', $userCompany)->where('is_current', 1)->first();
$linemanager = DB::table('hr_employees')->select('line_manager_id')->where('id', $userEmployee)->first();
$linemanageremployee = DB::table('hr_employees')->select('id')->where('line_manager_id', $linemanager->line_manager_id)->pluck('id');
$appraisedemployees = HrEmployee::select('id', 'employee_code', 'first_name', 'last_name')->where('id', $id)->get();
$goals = AppraisalGoal::where('employee_id', $id)->where('appraisal_identity_id', $identities->id)->where('id', '!=', $linemanager->line_manager_id)->get();
return view('appraisal.appraisal_goals.manager_employee_goal')->with('goals', $goals)->with('appraisedemployees', $appraisedemployees);
}
视图:manager_employee_goal.blade
<a class="btn btn-xs btn-primary" href="{{ route('appraisal.appraisal_goals.manager_employee_goal_list', ['goalid'=>$goal->id]) }}">
{{ trans('global.view') }}
</a>
到此路线:
public function manager_employee_goal_list($goalid)
{
$goal = AppraisalGoal::findOrFail($goalid);
$goaldetails = AppraisalGoalDetail::where('appraisal_goal_id', $goalid)->get();
return view('appraisal.appraisal_goals.manager_employee_goal_list')
->with('goal', $goal)
->with('goaldetails', $goaldetails);
}
使用
Route::get('appraisal_goals/manager_employee_goal/{id}', 'Appraisal\AppraisalGoalsController@manager_employee_goal')->name('appraisal.appraisal_goals.manager_employee_goal');
Route::get('appraisal_goals/manager_employee_goal_list/{goalid}', 'Appraisal\AppraisalGoalsController@manager_employee_goal_list')->name('appraisal.appraisal_goals.manager_employee_goal_list');
但是我得到了这个错误:
缺少[Route:appraisal.appraisal_goals.manager_employee_goal] [URI:appraisal_goals / manager_employee_goal / {id}]所需的参数。 (视图:C:\ xampp \ htdocs \ peopleedge \ resources \ views \ appraisal \ appraisal_goals \ manager_employee_goal_list.blade.php)
如何解决?
谢谢
答案 0 :(得分:1)
将route('appraisal.appraisal_goals.manager_employee_goal_list', ['goalid'=>$goal->id])
更改为url('appraisal.appraisal_goals.manager_employee_goal_list', ['id'=>$goal->id])
。
检查url生成器的用法:-https://laravel.com/docs/6.x/urls#urls-for-named-routes