2017-12-06 9 views
0

3テーブルあります。しかし、Laravelはお互いにテーブルをリンクすることができません、私は本当に小さなものを逃しているように感じるが、私はそれを見つけるように見えることはできません。リンクテーブルがあいまいでない

コントローラ

$data = Item::all(); 
$clipper = $data->first(); 
dd($clipper->attributes()); 

項目

protected $table = 'item'; 
protected $primaryKey = 'item_id'; 
public $timestamps = false; 

public function attributes() { 
    return $this->hasMany('App\Attributes', 'item_id'); 
} 

Atrributes

protected $table = 'attributes'; 
protected $primaryKey = 'attr_id'; 
public $timestamps = false; 

public function name() { 
    return $this->hasOne('App\Attributesname', 'name_id'); 
} 

DD

Result of dd

データベース設計

Design of my database

+0

あなたが照会か、まだ関係をロードしていないとして、それがある場合は知らない...関係メソッドはリレーションシップタイプオブジェクト(基本的にクエリビルダ)を返します。リレーションシップの結果を返しません – lagbox

答えて

1

の名前

protected $table = 'item_attributes'; 
protected $primaryKey = 'item_attr_id'; 
public $timestamps = false; 

が結果属性Laravelはあなたの出力PAを参照して、細かな関係を結びます家賃のモデルはアイテムである、関連するモデルはAtributeで、関連データ(ない関係)を表示するには、この方法を試してください。

$data = Item::all(); 
$clipper = $data->first(); 
dd($clipper->attributes); 
関連する問題