从关系 table 获取额外信息的关系
Get relation with extra information from relation table
我正在使用 Laravel 和 Eloquent 关联两个模型。
很简单,网上商店有很多品牌,但我在关系 table 中存储了一些我需要的额外信息。
我如何得到这个?
我的关系 table 是这样的:
brand_id | webshop_id | url
我目前获得包括品牌在内的网上商店的声明是:
$webshop = Webshop::select()
->where('slug', $slug)
->with('brands')
->first();
然后我可以查看 $webshop->brands 但无法访问列 "url"。
在您的网店型号上:
public function brands()
{
return $this->belongsToMany('App\Brand')->withPivot('url');
}
那就干
foreach ($webshop->brands as $brand)
{
echo $brand->pivot->url; // your url
}
我正在使用 Laravel 和 Eloquent 关联两个模型。
很简单,网上商店有很多品牌,但我在关系 table 中存储了一些我需要的额外信息。
我如何得到这个?
我的关系 table 是这样的:
brand_id | webshop_id | url
我目前获得包括品牌在内的网上商店的声明是:
$webshop = Webshop::select()
->where('slug', $slug)
->with('brands')
->first();
然后我可以查看 $webshop->brands 但无法访问列 "url"。
在您的网店型号上:
public function brands()
{
return $this->belongsToMany('App\Brand')->withPivot('url');
}
那就干
foreach ($webshop->brands as $brand)
{
echo $brand->pivot->url; // your url
}