You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 10路由模型绑定报错:缺少our-board.member路由必填参数

问题原因

你遇到的缺失路由参数错误,核心原因是查询BoardMember时未包含模型的主键字段(默认是id):

  • 在ourBoard方法中,你只选取了name和image两个字段,导致返回的BoardMember实例缺少主键值;
  • Laravel生成路由URL时,会自动提取模型实例的主键(或自定义路由键)作为{boardMember}参数的值,缺少这个字段时,route()函数无法生成有效的参数,从而抛出缺失参数的错误;
  • 同时路由模型绑定本身也依赖主键字段来查找对应的模型记录,缺少主键会导致后续的模型绑定也失效。
解决方案

根据你的需求,有两种可行解决方式:

方式一:显式包含主键字段

在查询时添加主键(默认是id)到select列表中:

public function ourBoard(): View
{
    $data['boardMembers'] = BoardMember::select([
        'id', // 添加主键字段
        'name', 'image'
    ])->get();

    return view('company.our-board', $data);
}

方式二:取消字段限制(获取所有字段)

如果不需要严格限制返回字段,可以直接移除select方法,获取模型的所有字段:

public function ourBoard(): View
{
    $data['boardMembers'] = BoardMember::get();

    return view('company.our-board', $data);
}

额外检查(自定义路由键场景)

如果你在BoardMember模型中自定义了路由键(比如使用slug而非id),例如:

class BoardMember extends Model
{
    public function getRouteKeyName()
    {
        return 'slug';
    }
}

那需要确保查询时包含该自定义路由键字段,比如把slug加入select列表中。

内容的提问来源于stack exchange,提问作者Mitesh Rathod

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 22:57:07