【发布时间】:2023-03-20 06:55:02
【问题描述】:
我已经设置了一对多关系,我想检索许多结果并将它们显示到我的刀片模板上。我目前收到以下错误Property [job_title] does not exist on this collection instance.
我认为这是因为我试图获得许多结果,尽管只有一个结果是一个集合。我的问题是我怎么知道循环回显我的数据的关键是什么,例如
@foreach ($WhatHere? as something)
这是我的代码 -
关系
//Client model
public function contact() {
return $this->hasMany(Contact::class, 'client_id', 'id');
}
//Contct model
public function client() {
return $this->hasOne(Client::class, 'id', 'client_id');
}
控制器查询
public function show(Client $client, $id)
{
$client = Client::where('id', $id)->firstOrFail();
return view('clients.single', compact('client'));
}
刀片
{{$client->contact->job_title}}
【问题讨论】:
-
你可以用
Client::findOrFail($id)代替你所拥有的,做同样的事情但更短 -
请注意:您可以将您的“联系”方法复数为
contacts(),这样就可以反映出它们不止一个
标签: php laravel laravel-5 laravel-blade