有没有办法使一个模型与一个依赖于rule_id
的两个不同模型之一建立关系,就像这样:
if($this->rule_id==1)
return $this->hasOne('App\model2');
else
return $this->hasOne('App\model3');
如果您有更好的方法或以某种方式起作用,请提前通知我
答案 0 :(得分:0)
更好地声明与两个模型的关系。迟早它将同时满足两个条件并与两个模型建立关系。为什么不首先声明两者呢?
答案 1 :(得分:0)
您可以像这样在模型中构建一个自定义函数,并带有用于检查它的参数
public function test($val){
if($val==1)
return $this->hasOne('App\model2');
else
return $this->hasOne('App\model3');
}
然后您可以在视图中调用该函数
$your object data sent from controller ->test(1);