【发布时间】:2015-03-13 15:39:54
【问题描述】:
我查看了很多有这个问题的搜索结果,但我无法让它工作。
用户模型:
<?php namespace Module\Core\Models;
class User extends Model {
(...)
protected function Person() {
return $this->belongsTo( 'Module\Core\Models\Person', 'person_id' );
}
(...)
还有人物模型:
<?php namespace Module\Core\Models;
class Person extends Model {
(...)
protected function User(){
return $this->hasOne('Module\Core\Models\User', 'person_id');
}
(...)
现在,如果我使用 User::find(1)->Person->first_name 它的工作。我可以从用户模型中获取人员关系。
但是.. User::with('Person')->get() 失败,调用未定义的方法 Illuminate\Database\Query\Builder::Person ()
我做错了什么?我需要收集所有用户及其个人信息。
【问题讨论】:
-
我不确定这是否是问题,但您应该将您的关系方法声明为
public -
并且......它的解决方案......感谢 lukasgeiter!
标签: php loading laravel-5 eager