Este proyecto implementa un sistema de encuestas utilizando Django. Se siguen los pasos explicados en el tutorial de Django. Utilizamos este projecto como punto de partida para el Curso de Creación de Aplicaciones Web.
Las versiones del proyecto han sido pensadas para ser seguidas en orden. Cada nueva versión incorpora una funcionalidad adicional concreta. El número en las versiones sigue la especificación de Semantic Versioning.
- Actualizados los requerimientos del proyecto: hemos actualizado Django de la versión 1.9 a la 2.1.
- La API de la aplicación
pollsha sido movida a la aplicaciónpolls_api.
- Implementación de una API como subaplicación de
pollsutilizando Django REST framework. - Nuevos requisitos del proyecto incluidos en el archivo
requirements.txt. - Tamaño de página para paginación movido a los
settingsdel proyecto. - Declarados los atributos
iddeQuestionyChoicede forma explícita en el archivomodels.py. - Corregida la ordenación de preguntas cerradas y sin cerrar.
- Corregido el método
closedel modeloQuestionpara salvar los cambios.
- Incorporación de cuotas para evitar abusos en la votación.
- La hoja de estilo CSS pasa a utilizar rutas relativas para la carga de imágenes.
- Mejoradas las plantillas HTML.
Cambios relativos a la interfaz de usuario de la aplicación:
- Agregado motor de plantillas Jinja2 e integrado con Django.
- Mejoradas las plantillas HTML utilizando Bootstrap.
Mejoras notables respecto al código del tutorial:
- Extendido el modelo de datos.
- Corregido el incremento de votos para evitar problemas por concurrencia.
- Agregadas fixtures para tener datos de ejemplo.
- Agregado comando
pollclosepara cerrar una votación. - Mejorada la estructuración de las configuraciones del archivo
settings.py. - Creado archivo
requirements.txtcon los requisitos del proyecto.
Implementación de las partes del tutorial de Django. Las versiones 0.1.0 a 0.7.0 implementan las partes 1, 2, 3, 4, 5, 6 y 7 respectivamente.