我继承了4个MySQL表:
listings
-ID
-描述
...
locations
-ID
-listing_id
guides
-ID
-名称
....
guide_location
-ID
-guide_id
-location_id
列表=>(很多)位置
指南=>(很多)地点=>(1)清单
列表,位置和指南都是Laravel Dingo应用程序中自己的模型 . 这是设置:
//Listing model
public function locations()
{
return $this->hasMany('Location');
}
然后
//Location model
public function guides()
{
return $this->belongsToMany('Guide');
}
public function listing()
{
return $this->belongsTo('Listing');
}
和
//Guide model
public function locations()
{
return $this->belongsToMany('Location');
}
我已经为 guide_location 添加了一个列,当我从数据库中选择一个指南时,我想返回它 .
所以现在:
guide_location
-ID
-guide_id
-location_id
-位置
我尝试在指南和位置模型中的 belongsToMany()
语句中添加 ->withPivot('position')
,但是它没有看到新列 .
我有什么想法我做错了吗?
1 回答
好的,
->withPivot()
正在工作,我只是没有看到结果,因为它在location.pivot.position
,而不是location.position
. 哑 .希望这有助于其他人 .