访问另一个模型上的关系
Access to relation on another model
我有三个表,Owner、Garages、Orders
所有者有“n”个车库,每个车库属于一个所有者,
每个车库可以有很多订单,
现在是否可以仅从具有关系实例的 Owner 模型获取订单?
所有者模型:
public function garages()
{
return $this->hasMany(Garage::class);
}
车库模型:
public function owner()
{
return $this->belongsTo(Owner::class);
}
public function orders()
{
return $this->hasMany(Order::class);
}
首先,您应该详细说明您的模型是如何定义的。猜测你的数据库模式如何,你必须修复你的关系:
Owner.php
public function garages()
{
return $this->hasMany(Garage::class);
}
public function orders()
{
return $this->hasManyThrough(Order::class, Garage::class);
}
Garage.php
public function owner()
{
return $this->belongsTo(Owner::class);
}
public function orders()
{
return $this->hasMany(Order::class);
}
Order.php
public function garage()
{
return $this->belongsTo(Garage::class);
}
话虽如此,您可以通过
访问您所有者的订单
$owner = Owner::findOrFail($owner_id);
$orders = $owner->orders;
我有三个表,Owner、Garages、Orders 所有者有“n”个车库,每个车库属于一个所有者, 每个车库可以有很多订单, 现在是否可以仅从具有关系实例的 Owner 模型获取订单? 所有者模型:
public function garages()
{
return $this->hasMany(Garage::class);
}
车库模型:
public function owner()
{
return $this->belongsTo(Owner::class);
}
public function orders()
{
return $this->hasMany(Order::class);
}
首先,您应该详细说明您的模型是如何定义的。猜测你的数据库模式如何,你必须修复你的关系:
Owner.php
public function garages()
{
return $this->hasMany(Garage::class);
}
public function orders()
{
return $this->hasManyThrough(Order::class, Garage::class);
}
Garage.php
public function owner()
{
return $this->belongsTo(Owner::class);
}
public function orders()
{
return $this->hasMany(Order::class);
}
Order.php
public function garage()
{
return $this->belongsTo(Garage::class);
}
话虽如此,您可以通过
访问您所有者的订单$owner = Owner::findOrFail($owner_id);
$orders = $owner->orders;