我正在使用的系统中遇到二维数组的问题, 所以这就是我的问题。 我正在使用 Laravel (如果有相关信息)并且我有一个名为的控制器 StationController 用于名为 Station 的模型。每个电台都有很多展位,每个展位都有很多人员。 我的问题是如何在不使用 JavaScript 或 Ajax 的情况下将查询结果返回给视图。
这是视图的结构:
Station id: 1
- Booth id: 1
- Personnel id: 1
- Personnel id: 2
- Personnel id: 3
- Booth id : 2
- Personnel id: 4
- Personnel id: 5
- Personnel id: 6
Station id : 2
...
这是我在该控制器中的函数,但它返回的是三维数组而不是2。
public function show($id){
$stations = stations::getstationWhere($id); // select current station
$station = $stations[0]; // select fields of the current station.
$services = stationsServices::getstationsServicesWhere($id); // services of the current station.
$service_booth = ServiceBooths::getServiceBoothBystation($id);
foreach($service_booth as $key => $value){
$booth_personnel[$key][$value->name] = BoothPersonnel::getBoothPersonnel($value->id);
}
return $booth_personnel;
}
这是它返回的截图。
答案 0 :(得分:0)
如果模型上的关系设置正确,您可以这样做:
Station::with('booth.personnel')->where('id', $id);
现在的展位#39;和'人员'需要与模型上的关系方法同名。因此,它可能是Station::with('booths.personnel')
,具体取决于您的命名约定。