from flask import Blueprint, render_template from models import Assessment, Exercise from utils import handle_db_errors bp = Blueprint('exercises', __name__) # Routes de consultation seulement - La création/modification se fait via le formulaire unifié d'évaluation @bp.route('/assessments//exercises/') @handle_db_errors def detail(assessment_id, id): from sqlalchemy.orm import joinedload assessment = Assessment.query.get_or_404(assessment_id) exercise = Exercise.query.options( joinedload(Exercise.grading_elements) ).filter_by(id=id, assessment_id=assessment_id).first_or_404() return render_template('exercise_detail.html', assessment=assessment, exercise=exercise)