各ミッションのミッションリストと現在のユーザーの進行状況を返す必要があります。問題は、それは私が得ることを意味する、指定されたユーザではないということですLaravel:アクセス関係テーブル
public function userProgress() {
return $this->hasOne(UserDailyMission::class,'mission_id');
}
:私のDailyMissionモデル(daily_missionsテーブル)に次の関係を使用して
return DailyMission::with('userProgress')->get();
:このため、私は、次の雄弁な表現を作成しました私のデータベースのランダムなユーザーの最初の進捗状況。
私はこれに式を変更しようとした:
return DailyMission::with('userProgress')
->where('user_daily_missions.user_id',$user->id)
->get();
私は次のエラーを取得する:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'user_daily_missions.user_id' in 'where clause
ユーザの進捗が、以下の構造用いuser_daily_missions
テーブルに格納されている:
id | user_id | mission_id | current_progress
現在のユーザーの進捗状況を出力する方法ランダムなユーザーの代わりに?構造に何か問題はありますか?
$mission = DailyMission::with('userProgress')->where('id', 'theuserid')->first();
return $mission;
と同様に、余分な条件で
closure
を渡すことができます$ user-> id) ' –あなたの関数に$ userがありますか? – Onix
@NarendrasinghSisodiaありがとう!驚くばかり! – TheUnreal