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

Laravel中如何在Blade视图正确获取并显示外键对应值?

解决方案:在员工详情表格显示公司名称

1. 定义模型关联

打开app/Models/Employee.php,添加与Company模型的关联关系:

public function company()
{
    return $this->belongsTo(Company::class);
}

这个关联表示一个员工属于一个公司,Laravel会自动匹配employees表的company_id外键与companies表的id主键。

2. 预加载关联数据优化查询

修改EmployeeController的index方法,使用with('company')预加载公司数据,避免多轮查询的性能问题:

public function index()
{
    $employees = Employee::with('company')->get();
    return view('employees.index', compact('employees'));
}

3. 修改Blade视图显示公司名称

找到表格中显示company_id的代码行,替换为调用关联模型的名称字段:

<!-- 原代码 -->
<td>{{ $employee->company_id }}</td>

<!-- 修改后代码 -->
<td>{{ $employee->company->name ?? '无关联公司' }}</td>

用?? '无关联公司'是为了兼容员工未关联公司的场景,避免因关联不存在抛出错误。

内容的提问来源于stack exchange,提问作者Arctic Fox

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 04:05:21