【发布时间】:2018-04-06 00:59:29
【问题描述】:
我正在使用插件 TokenInput 来执行搜索标签。 我有 2 个具有多对多关系的表。表:故事、标签和数据透视表:story_tag。我执行一个搜索查询:
$term = request('q');
$tags = \App\Tag::where('slug', 'LIKE', '%' . $term . '%')->get();
return response()->json($tags->toArray());
它正在工作。现在,我想计算数据透视表 story_tag 中的标签数量并将结果显示如下:
tagNamea - 69
tagNameb - 9
...
我尝试了很多搜索,但没有得到想要的结果。怎么做?有什么帮助吗?谢谢。
更新:
关系模型:
故事模型:
public function tags()
{
return $this->belongsToMany('App\Tag');
}
标签模型:
public function stories()
{
return $this->belongsToMany('App\Story');
}
【问题讨论】:
-
这是什么tagNamea?
-
是从Tag表查询的结果。数字 69 是数据透视表中的计数。它对应于数据透视表中标签的出现次数。
-
您能否告诉我们您是如何定义模型中 Story 和 Tag 之间的关系的?
-
我已经在上面更新了。
标签: laravel search relationship