2017-11-23 8 views
0

問題は、私は3つのデータベーステーブルデータベースに3つのテーブルを接続するには?

  • 第二表はATTRIBUTE_IDとATTRIBUTE_NAMEと属性であるuser_idを持つユーザーの
  • 第一表は
  • と3つ評価表持つUSER_IDされ、ATTRIBUTE_ID
を持っているということです

特定のユーザーをクリックした後、attribute_idを使用して2番目の表からattribute_nameを取得しますか?出来ますか?答えが「はい」の場合は、これをどうやって提案してください?事前にありがとうございます。ここで私は

  • 私は、多くの関係と問題に多くを使用して属性テーブルからユーザーテーブルとATTRIBUTE_IDから編集表示のために特定のユーザーにそのレコードをクリックした後は、我々は評価から特定のIDのATTRIBUTE_NAMEを得ることであるというイメージをアップロードattribute_idを使用しているテーブル出来ますか?

その編集フォームと下のボタンは、属性テーブルからIDを取得提出するが、我々は評価テーブルからATTRIBUTE_NAMEを表示したい

Its Edit form and below submit button get id from attribute table but we want to display attribute_name from rating table

+0

PLSのは、別の質問に見えます。 https://stackoverflow.com/questions/10269809/mysql-join-query –

+0

モデルとブレードコードを投稿できますか? – Laerte

+0

ユーザーモデル: public function Rating(){ return $ this-> hasMany(Rating :: class); } 評価モデル:public function User(){ return $ this-> belongsTo(User :: class); } –

答えて

0

問い合わせ::

$records = DB::table('attributes')->join('ratings','attributes.id','=','ratings.attribute_id')->where('user_id',$id)->get(); 
return view('employee.edit',compact('records')); 

あなたEDITビューページ

@foreach($records as $record) 
<h4>Attributes ==>{{$record->attribute}}</h4> 
@endforeach 
0

ユーザーモデル:

public function rating() 
{ 
    return $this->belongsTo(Rating::class); 
} 

評価モデル:

public function attribute() 
{ 
    return $this->hasMany(Attribute::class, 'attribute_id'); 
} 

はその後、コントローラにそれを呼び出す:

dd(Users::with('rating.attribute')->where('user_id', 1)); 
関連する問題