当模型具有相同名称的属性时,是否需要加载?

时间:2018-04-04 13:49:43

标签: php laravel-5.2 laravel-eloquent

我有一个名为' hm'的模型。同一个模型有一个名为“hm'处理与另一个表的关系:

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

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

虽然stackoverflow上有一些帖子暗示我无法完成的事情,但我已经在雄辩中确定了一种允许你获得关系价值的方法。所以,这可以使用方法getRelationValue()来实现,而行$page->getRelationValue('hm')将获取我的关系!