Я использую Laravel 5.6. У меня есть три модели: пользователь, попытка, оценка. Мне нужно выяснить, какие оценки пользователь прошел или не сдал. Когда пользователь проходит оценку, модель попытки будет сохранена с логическим значением is_passing true или false. Ниже моя структура базы данных.
User
ID | name
Attempt
ID | assessment_id | user_id | is_passing (bool)
Assessment
ID | name
Я работаю в файле модели User.php и пытаюсь создать коллекцию, чтобы иметь возможность циклически проходить оценки как таковые
@foreach($user->assessmentsPassOrFail as $assessment)
@if($assessment->passed)
{{ $assessment->name }}
@else
<a href="link to assessment">{{ $assessment->name }}</a>
@endforeach
У меня есть следующее в моем User.php, но его нужно настроить, чтобы показывать все Оценки (проходящие или нет), а не просто проходящие.
public function attempts()
{
return $this->hasMany('App\Models\Attempt');
}
public function assessmentsPassOrFail(){
return $this->attempts()->with('assessment')->where('is_passing', 1);
}
Большое спасибо заранее за любую помощь! Вот уже два дня бью головой об стену!