当模型具有同名属性时急切加载?
Eager load when model has attribute with same name?
我有一个模型,它有一个名为 'hm' 的属性。同一个模型有一个名为 'hm' 的方法,它处理与另一个 table:
的关系
Class Page {
public function hm() {
returh $this->hasOne('App\Hm');
}
}
因此,当我执行查询时,我可能想要访问属性 "hm",但我也可能会得到 "hm" 关系。
$page = \App\Page::with('hm')->first();
$variableHm = $page->hm;
$relationHm = $page->hm; # issue is here
如何解决?
虽然 上有一些帖子暗示我无法完成我所追求的事情,但我已经在 eloquent 中找到了一种方法,可以让您获得关系值。所以,这可以使用方法 getRelationValue()
来实现,一行 $page->getRelationValue('hm')
将获取我的关系!
我有一个模型,它有一个名为 'hm' 的属性。同一个模型有一个名为 'hm' 的方法,它处理与另一个 table:
的关系Class Page {
public function hm() {
returh $this->hasOne('App\Hm');
}
}
因此,当我执行查询时,我可能想要访问属性 "hm",但我也可能会得到 "hm" 关系。
$page = \App\Page::with('hm')->first();
$variableHm = $page->hm;
$relationHm = $page->hm; # issue is here
如何解决?
虽然 getRelationValue()
来实现,一行 $page->getRelationValue('hm')
将获取我的关系!