17 lines
		
	
	
		
			734 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			17 lines
		
	
	
		
			734 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| 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/<int:assessment_id>/exercises/<int:id>')
 | |
| @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) |