雄辩的关系回归但没有给我属性

时间:2016-03-24 13:01:46

标签: php laravel laravel-4 eloquent twig

我定义的雄辩关系是返回belongsTo对象,但实际上并没有让我访问应该在其中的任何属性。

Step.php中的关系

public function profession()
{
    return $this->belongsTo(__NAMESPACE__.'\\Profession', 'id', 'profession_id');
}

Profession.php中的关系

public function steps() {
    return $this->hasMany(__NAMESPACE__ . '\\Step', 'id', 'profession_id');
}

我用来返回belongsTo关系的代码。

{{ dd(step.profession) }}

我得到的回复属于belongsTo类型,但它不包含有关该专业的任何信息。

2 个答案:

答案 0 :(得分:1)

您可以尝试Eager Loading the professionions,如:

Step::with('profession')->orderBy('name', 'asc')->get();

答案 1 :(得分:0)

将您的关系更改为

Step.php中的关系

public function profession()
{
    return $this->belongsTo(__NAMESPACE__.'\\Profession', 'profession_id');
}

Profession.php中的关系

public function steps() {
   return $this->hasMany(__NAMESPACE__ . '\\Step', 'profession_id');
}

belongsTo hasMany 的第二个参数应该是外键而不是主键