Laravel 访问视图中的外键名称

Laravel access name of foreign key in view

查询 table 包含 client_id 作为外键,我想在我的视图中访问 ist Name。 客户 table 有一个名称列。

我尝试按照以下方式在我的视图中显示名称,但没有成功。

@foreach($inquiries as $inquiryKey => $inquiryValue)
    <td>{{ $inquiryValue->client_id }}</td> // works
    <td>{{ $inquiryValue->client_id->name }}</td> // does not work
@endforeach

客户端模型

public function inquiry()
{
    return $this->hasMany(Inquiry::class);
}

询价

public function client()
{
    return $this->belongsTo(Client::class);
}

client_id只是客户端的id。既然你有一个关系,你应该参考它:{{ $inquiryValue->client->name }}

你应该试试这个:

@foreach($inquiries as $inquiryKey => $inquiryValue)
    <td>{{ $inquiryValue->client_id }}</td>
    <td>{{ $inquiryValue->client->name }}</td> 
@endforeach

尝试

{{ $inquiryValue->name }}

您也可以检查下面代码中的变量

dd(get_defined_vars())

你可以试试这个..

客户端模型

public function inquiries()
  {
    return $this->hasMany(Inquiry::class);
  }

询价型号

public function client()
  {
     return $this->belongsTo(Client::class, 'client_id');
  }

查看

@foreach($inquiries as $inquiryKey => $inquiryValue)
  <td>{{ $inquiryValue->client_id }}</td>
  <td>{{ $inquiryValue->client->name }}</td>
@endforeach