我正在处理一些雄辩的查询。因此,想法是我有2个模型,我们将其称为文件和定价。文件 hasMany ,因此在价格表中,我有file_id
字段。但是我在具有file_id = null
的定价表中有默认价格。我想获取具有定价以及具有file_id = null
的这些默认价格的文件。最重要的是,由于定价表具有其他一些关系,我想雄辩地处理它。所以我有一个想法,在文件模型中,我要获取相关的定价和默认价格,然后将它们合并。但是我无法在雄辩的模型中执行查询以获取具有file_id = null
的默认价格。我想得到这样的东西:
public function filePricing()
{
return $this->hasMany(Pricing::class);
}
public function defaultPricing()
{
return Pricing::where('file_id', null);
}
public function pricing()
{
return $this->defaultPricing()->merge($this->filePricing());
}
因此,在控制器中,我想这样做:
File::with('pricing', 'pricing.[myNextRelation]')->get();
或者也许有人有更好的主意来实现它?