我有以下 Eloquent 关系
class Broker extends Eloquent{
public function configurable(){
return $this->morphTo();
}
}
class ProductConfiguration extends Eloquent{
public function productConfigurations()
{
return $this->morphMany('Excel\Products\ProductConfiguration','configurable');
}
}
通过执行以下操作,我可以很容易地找到属于代理的所有ProductConfigurations:
$broker = Broker::find($id);
$productConfigurations = $broker->productConfigurations;
我不清楚的是如何为ProductConfigurations指定条件,因此,如果我的ProductConfiguration有
type
字段,则类似以下内容: $broker = Broker::find($id);
$productConfigurations = $broker->productConfigurations->where('type' = 'reg');
查看文档,我找不到确切的方法。
最佳答案
好吧,一定是暂时性的脑卡住或什么,就像这样简单:
$broker = Broker::find($id);
$configurations = $broker->productConfigurations()
->where('type',$type)
->get();;
关于Laravel为morphMany集合指定条件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26193255/