で表示します。私の場合、のユーザーテーブルと評価テーブルのような2つのテーブルがあります。ユーザーの詳細をlaravel
テーブル、私は名前、電子メールなど、
で評価表のような利用者の個人情報を格納しています、私はUSER_IDと評価を格納していユーザーでは(格付けのような数字になります1,2,3,4及び5)
を私はここに関係二つのテーブル を作成しているが関係
//User Model
public function ratings()
{
return $this->hasMany(Rating::class);
}
//Rating model
public function user()
{
return $this->belongsTo(Consultant::class);
}
です 私は
$data = User::with('ratings')->get();
私は熱心な負荷から取得します応答は、私は熱心ですべてのユーザーの平均評価を得ることができますどのように
[
{
"id": 1,
"cunsultant_name": "Quincy Jerde",
"contact_number": "882-904-3379",
"ratings": [
{
"user_id": 1,
"rating_for_user": 3
},
{
"user_id": 1,
"rating_for_user": 5
},
{
"user_id": 2,
"rating_for_user": 3
}
]
},
{
"user_name": "Alene Dicki",
"contact_number": "247.604.8170",
"ratings": [
{
"id": 4,
"user_id": 3,
"rating_for_user": 3
}
]
}
]
積極的なロードを使用してデータを取得し表示することができることができます読み込み中ですか?
あなたは 'join'と' avg' funtionで試しましたか? –
はい、私は@SagarGautamを試しましたが、私がjoinとavgを使用するときにユーザーが評価をしていない場合、ユーザーの詳細は表示されません。 –