DCC-CC4401/2018-2-Tiburoncin-hu-ha-ha-T4

Funcionamiento Modelo

Closed this issue · 2 comments

Modelo construido en Django (actualmente en branch pancho-t4) presenta ciertos problemas:

  • las llaves primarias solo pueden ser de 1 atributo por lo que algunas tablas tal vez deberan ser re estructuradas
  • es posible agregar estudiantes a un grupo sin que este en el curso, esto debe ser corregido
  • falta generar una tabla con las respuestas de los estudiantes
  • falta enlazar cada coevaluacion a un grupo de forma que las preguntas que un estudiante vea sean personaizada para su grupo (necesario?) (se puede hacer junto con el punto anterior?)
  • Al agregar unique_together, se obtiene el comportamiento esperado de varias llaves primarias.
  • Se pueden agregar constraints para que la base de datos verifique, pero es necesario? se podría verificar directamente en el código antes de insertar.
  • Agregada, pero puede que no esté completa.
  • Al momento de mostrar las preguntas, se podrían personalizar las preguntas dependiendo del grupo, y la tabla de Respuestas tiene un una foreign key del estudiante que responde, como también el estudiante que es coevaluado.

problema de declaracion, la entidad/tabla Response que almacena las respuestas de las coevaluaciones usa dos veces como llave foranea un Usuario desde la entidad User en dos atributos distintos lo que produce un error:

SystemCheckError: System check identified some issues:

ERRORS:
coevaluacion.Response.coevaluated: (fields.E304) Reverse accessor for 'Response.coevaluated' clashes with reverse accessor for 'Response.student'.
        HINT: Add or change a related_name argument to the definition for 'Response.coevaluated' or 'Response.student'.
coevaluacion.Response.student: (fields.E304) Reverse accessor for 'Response.student' clashes with reverse accessor for 'Response.coevaluated'.
        HINT: Add or change a related_name argument to the definition for 'Response.student' or 'Response.coevaluated'.