我有一个包含tag_id和contact_id的表,我设法能够获得具有特定tag_id的联系人,但我无法获得实际显示的数据。
Taggings.php
public function contact()
{
return $this->belongsTo('App\Contact', 'contact_id', 'ID');
}
public function tag()
{
return $this->belongsTo('App\Tag');
}
Contact.php
public function taggings()
{
return $this->hasMany('App\Taggings', 'contact_id', 'ID');
}
在控制器中
$contacts = Taggings::with('contact')->where('tag_id', $tag->id)->get();
在模板中
@foreach ($contacts as $contact)
<tr>
<td>{!! $contact->fname !!}</td>
<td>{!! $contact->lname !!}</td>
<td>{!! $contact->email !!}</td>
</tr>
@endforeach
这会导致无法显示,如果我只是尝试输出{{$ contact}}我会获得所有数据,但尝试仅显示联系人中的某些列会导致无法显示任何内容。我“可以”显示标签表中的列,但这不是我需要的。
我很擅长使用这样的关系,所以我很可能设置错误。
答案 0 :(得分:0)
想出来,我忘了将方法添加到模板中,如下所示:
{{ $contacts->contact->fname }}