从关系表中获取与额外信息的关系
Posted
技术标签:
【中文标题】从关系表中获取与额外信息的关系【英文标题】:Get relation with extra information from relation table 【发布时间】:2018-05-01 02:49:27 【问题描述】:我使用 Laravel 和 Eloquent 来关联两个模型。
很简单,一个网店有很多品牌,但是我需要在关系表中存储一些额外的信息。
我如何得到这个?
我的关系表如下所示:
brand_id | webshop_id | url
我目前获得包括品牌在内的网上商店的声明是:
$webshop = Webshop::select()
->where('slug', $slug)
->with('brands')
->first();
然后我可以查看 $webshop->brands 但无法访问“url”列。
【问题讨论】:
看这个:***.com/questions/26566675/… 【参考方案1】:在您的网上商店模型上:
public function brands()
return $this->belongsToMany('App\Brand')->withPivot('url');
那就做吧
foreach ($webshop->brands as $brand)
echo $brand->pivot->url; // your url
【讨论】:
以上是关于从关系表中获取与额外信息的关系的主要内容,如果未能解决你的问题,请参考以下文章
Spring-Data-JPA ManyToMany 与额外列的关系
反对 js:无法使用连接表额外属性更新多对多关系。说附加属性无效