【发布时间】:2015-09-13 16:33:09
【问题描述】:
我有两个表路径和标记(一条路径可以有多个标记)。我想使用 trails 表中的自定义方法从两者返回数据。
类似这样的:
public function RetrieveMarker(){
return Marker::where("relation_id","=", $this->id);
}
但是如何从控制器调用这个方法呢?
我想返回一个包含多个路径的 json 对象及其相关标记,如下所示:
[{id: 1, trail: a trail, markers: [{id: a marker}, id: another marker],}
{id: 2, trail: trail 2, markers: [{id: yam}, id: yaam]}]
并且想做这样的事情:
return $this->trail
->orderBy('title', 'ASC')
->where('region_id', $region_id)
->RetriveMarkers()
->get();
但我得到了一个Illumination/bad/query异常。
我尝试了几种使用范围的变体,但认为这并不难,我只是不知道方法!
顺便说一句,我使用的是 Laravel 4,路径和标记之间没有直接关系,因为标记与多个表多态相关,我不想将“$this->belongsTo”样式用作自定义这里肯定需要方法。
提前致谢。
【问题讨论】:
标签: laravel laravel-4 model controller