Saltar a contenido

Especificación: Preguntas Discursivas

Descripción

Sistema para gestionar, mostrar y evaluar preguntas que requieren respuestas de texto libre por parte del estudiante.

Modelos de Datos

DiscursiveQuestion

Extiende el modelo base de preguntas.

Campo Tipo Descripción
title CharField Título corto de la pregunta
content TextField (HTML) Enunciado completo
correct_answer TextField Respuesta modelo para referencia
evaluation_prompt TextField Instrucciones específicas para la IA
max_characters Integer Límite de longitud para la respuesta

Vistas y Templates

DiscursiveQuestionView

  • Ruta: /questions/<id>/
  • Template: questions/discursive_detail.html
  • Contexto: Objeto pregunta, formulario de respuesta.
  • Funcionalidad:
    • Mostrar enunciado.
    • Textarea con contador de caracteres (JS).
    • Botón "Enviar para Evaluación" (abre modal de confirmación de créditos).

ViewEvaluationView

  • Ruta: /questions/<id>/evaluation/<eval_id>/
  • Funcionalidad: Mostrar el feedback generado por la IA y la nota asignada.

Importación (JSON Schema)

El sistema debe soportar la importación masiva mediante este formato:

{
  "questions": [
    {
      "type": "discursive",
      "title": "Fisiopatología de la Diabetes",
      "content": "<p>Explique el mecanismo...</p>",
      "correct_answer": "La resistencia a la insulina...",
      "evaluation_prompt": "Evalúa enfocándote en receptores GLUT4...",
      "max_characters": 2000
    }
  ]
}

Criterios de Aceptación

  • [ ] Admin personalizado creado para gestionar estas preguntas.
  • [ ] Renderizado correcto de HTML en el enunciado.
  • [ ] Contador de caracteres en tiempo real funcional.
  • [ ] Validación de importación JSON robusta.