【发布时间】:2018-08-18 06:52:35
【问题描述】:
我有guides 和areas 表,它们有多对多关系,所以我有另一个表来连接它们,命名为guidings。快速解释,在现实生活中,一个导游知道很多地区,一个地区可以被很多导游知道。
我想根据用户发送给控制器的一系列区域来搜索导游,但同时导游还必须在视图中提供他的领域专业知识(他知道)的信息。
如下表:
guides
- id integer, primary key
- name string
areas
- id integer, primary key
- name string
guidings
- guide_id integer, foreign key
- area_id integer, foreign key
我已经设置了如下模型:
model guide
public function guides()
{
return $this->belongsToMany('App\Area', 'guidings', 'guide_id', 'area_id');
}
model area
public function users()
{
return $this->belongsToMany('App\User', 'guidings', 'area_id', 'guide_id');
}
我的控制器看起来像这样
$areas = [1, 2, 3]; //actually this array i get from request, it based on id of area
$guides = Guide::with('areas')->where('id', '>' , 0);
$countGuide = count(Guide::all());
for ($i=0; $i < $countGuide; $i++) {
$guides = $guides->orWhere(); //i stuck in here
}
$guides = $guides->get();
return response()->json($guides); //the data will be sent to ajax in view
那么我如何根据用户发送给控制器的一系列区域搜索导游,但同时导游还必须在视图中提供他的区域专业知识(他知道)的信息。 有什么建议吗?谢谢
【问题讨论】:
-
还有...问题是什么?
-
@ijustried 我如何根据用户发送给控制器的一系列区域搜索导游,但同时导游还必须提供他的领域专业知识(他知道)的信息视图
-
指南必须链接到阵列中的所有区域还是仅链接到其中之一?
-
@RossWilson 所有区域,考虑只显示所有向导的属性和他的所有区域,但他的一个或所有区域必须在用户作为请求发送的数组中
标签: database laravel database-design eloquent relational-database