Php 拉威尔5号异常关系
寻找一个laravel 5项目,在其中我有一个不寻常的关系来创建 模型Foo正好连接到模型栏的两个实例(在不同的键下),但每个栏只能连接到一个Foo,而不管它占用两个字段中的哪个字段。i、 ePhp 拉威尔5号异常关系,php,laravel,laravel-5,Php,Laravel,Laravel 5,寻找一个laravel 5项目,在其中我有一个不寻常的关系来创建 模型Foo正好连接到模型栏的两个实例(在不同的键下),但每个栏只能连接到一个Foo,而不管它占用两个字段中的哪个字段。i、 e Foo id barA() barB() Bar id foo() 不知道如何正确地映射关系。我试过了 Foo{ public function barA(){ return $this->belongsTo('\App\Bar','bar_a_id');
Foo
id
barA()
barB()
Bar
id
foo()
不知道如何正确地映射关系。我试过了
Foo{
public function barA(){
return $this->belongsTo('\App\Bar','bar_a_id');
}
public function barB(){
return $this->belongsTo('\App\Bar','bar_b_id');
}
}
这很有效,但我不知道如何创造关系的另一面
我知道我可以使用1:m的关系,但随后,哪个实体是“a”和哪个实体是“b”变得模糊不清
有人有什么建议吗?我的方法是使用一对多关系,并使用模型观察者来实施限制 至于识别a和b,在这个物体中还有什么东西可以识别它们吗?您可以始终在模型本身上存储一列,并使用范围来提取正确的列。因此,您将得到类似于
$foo->bar()->a()->first()
和$foo->bar()->b()->first()
我会避免像你的问题中那样使用2列方法。在一个老项目上这么做,太可怕了。谢谢,我会接受你的建议。我会努力使它成为一种1:m的关系。