我有两张表,一张用于链接,第二张用于标签。
当用户创建新标签时,它将写入标签表新行。 现在我想做的是获取所有带有标签的用户链接。我已经这样做了:
$data['links'] = User::find($user->id)->links()->get();
foreach ($data['links'] as $key => $value) {
$data['links'][$key]['tags'] = DB::table('tags')
->where('user_id', $user->id)
->where('link_id', $value->id)
->get();
}
它有效,但我认为有比这更好的方法。
最佳答案
用户模型
public function links()
{
return $this->hasMany('Link');
}
链接模型
public function user()
{
return $this->belongsTo('User');
}
public function tags()
{
return $this->hasMany('Tag');
}
标签模型
public function link()
{
return $this->belongsTo('Link');
}
所以我们准备好了..
User::with('links.tags')->get()
关于php - Laravel 结合两个表帖子 + 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29732172/