From 957947cc0b203a7d39e0dbdccee0df98f155064a Mon Sep 17 00:00:00 2001 From: jeremy bayse Date: Tue, 14 Apr 2026 19:55:05 +0200 Subject: [PATCH] fix: quiz questions not showing - reload quiz freshly in show(), fix v-if guard in QuizInterface --- app/Http/Controllers/AttemptController.php | 10 +++++++--- resources/js/Pages/Candidate/QuizInterface.vue | 6 ++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/app/Http/Controllers/AttemptController.php b/app/Http/Controllers/AttemptController.php index 9bc8d59..a047277 100644 --- a/app/Http/Controllers/AttemptController.php +++ b/app/Http/Controllers/AttemptController.php @@ -76,11 +76,15 @@ class AttemptController extends Controller $candidate->update(['status' => 'en_cours']); } - $quiz->load(['questions.options']); + // Reload quiz with questions FRESHLY (avoid any cached state from model binding) + $quizData = Quiz::with(['questions' => function($q) { + $q->orderBy('id')->with('options'); + }]) + ->find($quiz->id); return Inertia::render('Candidate/QuizInterface', [ - 'quiz' => $quiz, - 'attempt' => $attempt->load('answers') + 'quiz' => $quizData, + 'attempt' => $attempt->load('answers'), ]); } diff --git a/resources/js/Pages/Candidate/QuizInterface.vue b/resources/js/Pages/Candidate/QuizInterface.vue index 1876459..c3330cf 100644 --- a/resources/js/Pages/Candidate/QuizInterface.vue +++ b/resources/js/Pages/Candidate/QuizInterface.vue @@ -150,8 +150,10 @@ const finishQuiz = () => {
- -
Chargement de la question...
+ +
+

Aucune question disponible pour ce test.

+