Laravel 拉威尔以关系为轴心的关系(雄辩)
在拉威尔,有没有可能把一段关系放在一段关系中 基本上,我已经建立了一段关系,但我需要另一段关系(如果这有意义的话) 我的两个模型:Laravel 拉威尔以关系为轴心的关系(雄辩),laravel,eloquent,pivot,relationship,Laravel,Eloquent,Pivot,Relationship,在拉威尔,有没有可能把一段关系放在一段关系中 基本上,我已经建立了一段关系,但我需要另一段关系(如果这有意义的话) 我的两个模型: 贮藏 供应商 我的门店和供应商关系模型: 供应商商店 商店标识 供应商id 如您所见,我有许多门店和供应商,每个供应商都可以通过供应商门店表相互关联 这很好用 我的问题是对于每个关系(商店和供应商)都可能存在 许多交货日 我有很多关系: DeliveryDay supplier_store_id day 我想如果我进入供应商商店模型并添加: public
- 贮藏
- 供应商
- 供应商商店
- 商店标识
- 供应商id
DeliveryDay
supplier_store_id
day
我想如果我进入供应商商店模型并添加:
public function days()
{
return $this->hasMany('App\DeliveryDay');
}
会有用,但我似乎无法通过雄辩的方式获取这些数据
我希望做这样的事情:
public function getDays($id)
{
$supplier = Supllier::find($id);
foreach($supplier->stores() as $store)
{
foreach($store->days() as $day)
{
echo $day->day;
}
}
}
$supplier=供应商::查找($id);
$supplier->store->pivot->days
pivot(SupplierStore)将保存该特定关系的关系,我可以抓紧时间
有人能帮我弄清楚我需要做什么来实现这一点吗?非常感谢您抽出时间。在谷歌上搜索了几个小时后,我的头疼得厉害 您可以这样访问每一天:
public function getDays($id)
{
$supplier = Supllier::find($id);
foreach($supplier->stores() as $store)
{
foreach($store->days() as $day)
{
echo $day->day;
}
}
}
或者整天都在
$supplier->stores->days;
供应商商店已经是模型了吗?hasManyThrough?-可能是复制品是的,SupplierStore是一个模型。这是用于供应商和商店之间归属关系的模型。这个模型本身也有一个HasMany for DeliveryDays的关系。我也有同样的问题。我需要在pivot模型中定义一个关系,以便于查询。你是怎么解决的?卢卡斯,谢谢你的帮助。但我认为你的建议不是解决办法。我想要访问关系中的关系的内容。例如:$supplier->store->pivot->daysh我的错,那么你想使用你的供应商模型度过这些日子吗?是的,伙计,这似乎是不可能的。真糟糕!如果我添加($supplier->stores->pivot)-有一个关系行,但它是一个空白数组,它没有我添加到关系中的days()关系。真的很奇怪。
$supplier->stores
您能添加这个,看看是否返回您的SupplierModel吗?如果有,你可以使用foreach循环访问这些天,如果我这样做的话$供应商->门店->第一(),它将显示第一个关系。然后我可以执行$supplier->stores->first()->pivot,这将显示实际的关系模型。在“pivot”中,我看不到天数,即使我尝试foreach说$supplier->stores->pivot->days,它认为这是我的SupplierStore模型上的一个列,而不是关系。如果我做$supplier->stores->pivot->days(),它只会说函数不存在。