Laravel 尝试将值传递给控制器​​函数时路由返回错误 404

Laravel route returning error 404 when attempt is made to pass value to controller function

我的 blade 中有一个这样的按钮

@can('customer_show')
                <a class = "btn btn-primary" href = "{{ route('admin.loan-applications.showCustView', $loanApplication->user_id) }}">
                    View Applicant 
                </a>
            @endcan

这是路线:

Route::get('loan-applications/{loan_application}/showCustView', 'loanApplicationsController@showCust')->name('loan-applications.showCustView');

在我的控制器中,我做了:

public function showCust(LoanApplication $loanApplication)
{
    
    
    $customerInformation = customerInfoModel::where('Cust_id', $loanApplication->user_id));
     
    return view('admin.loanApplictions.showCustView', compact(['customerInformation', 'loanApplication']));
}

我想做的是从附加到 customerInfoModel 的数据库中获取行,其中 Cust_id 字段等于当前在 [= 中查看的贷款的 loanApplication->user_id 24=] 以上。当点击“查看申请人”按钮时,我收到错误 404 页面。为什么会这样?

我觉得应该是这样的:

@can('customer_show')
                <a class = "btn btn-primary" href = "{{ route('loan-applications.showCustView', $loanApplication->user_id) }}">
                    View Applicant 
                </a>
            @endcan

试试看

使用这个命令查看路由列表

php artisan route:list

//此命令将显示您应用程序中的所有路由

如果您的路线未列在该路线列表中,请在路线文件中手动检查路线上具有相同 Url 的路线。

如果您发现更改 url 并使用此命令清除缓存

php artisan optimize:clear

我找到了你对上一个答案的评论。 检查路由模型绑定。我认为你必须添加 一个

public function showCust( $loanApplicationCustId)
{
    
    $customerInformation = customerInfoModel::where('Cust_id', $loanApplicationCustId))->first();
     
    return view('admin.loanApplictions.showCustView', compact(['customerInformation', 'loanApplication']));
}

应该是这样的..希望对你有用...... 否则分享你的项目 git repo link