2016-03-24 8 views
0

私が定義した雄弁な関係は、belongsToオブジェクトを返すことだが、実際にはその内部にある属性にアクセスすることはできない。 Profession.phpEloquent Relationship私は属性を返すが、私には与えない。

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

コードで

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

関係Step.php

関係は私がbelongsToの関係を返すために使用しています。

{{ dd(step.profession) }} 

私は取得しています応答がbelongsToの型であるが、それは単なる職業に関する情報が含まれていません。

+1

である必要があり、私は小枝を知らないが、これはhttp://stackoverflow.com/questions/関連するかもしれません29514081/can not-access-eloquent-attributes-on-twig –

+0

実際にリレーションをどのように照会するかを示す部分が欠けているので、ビューで使用することができます。 – lesssugar

+0

しないでください。belongsToは、foreign_keyというキーだけを受け取ります。ここでprofession_idを削除できます。さらにクラスをProfession :: class(PHP 5.5> =)に置き換えることができます – wiesson

答えて

1

あなたが好きな職業をロード熱心試みることができる:

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

これはうまくいきました!ありがとう、たくさんの男。 – LukeBetter

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

にStep.phpに

関係に

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

関係をあなたの関係を変更

belongsToのhasManyのの第2引数は外部キーない主キー

+0

私はこれをしましたが、私はまだ同じ問題を経験しています。私は公正な数の組み合わせを試して、それはまだ悲しいことに、働いていません。 – LukeBetter

関連する問題