Мне нужно вернуть список миссий и текущий прогресс пользователя для каждой миссии. Для этого я создал следующее красноречивое выражение:
return DailyMission::with('userProgress')->get();
Используя следующую связь в моей модели DailyMission (таблица daily_missions):
public function userProgress() {
return $this->hasOne(UserDailyMission::class,'mission_id');
}
Проблема в том, что он не указан пользователем, что означает, что я получаю первый прогресс случайного пользователя в моей базе данных.
Я попытался изменить выражение на это:
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
Любые идеи, как вывести прогресс текущего пользователя вместо случайного пользователя? Что-то не так со структурой?