Descripción de la nueva funcionalidad
Yo, como desarrollador backend, quiero que todas las constantes de dominio de la aplicación (idiomas, roles, meses, tipos de licencia, géneros) estén centralizadas en core/choices.py, para que todos los modelos y formularios del proyecto utilicen una única fuente de verdad, facilitando el mantenimiento y la internacionalización.
Criterios de aceptación
- El archivo
core/choices.py debe exponer las siguientes listas: LANGUAGE, ROLE, MONTHS, LICENSE_TYPES, GENDER_CHOICES.
- Los valores de texto en
ROLE, MONTHS, LICENSE_TYPES y GENDER_CHOICES deben estar envueltos en gettext_lazy(_(...)) para soporte i18n.
LANGUAGE debe cubrir todos los idiomas del estándar ISO 639-1.
LICENSE_TYPES debe cubrir los seis tipos de licencias Creative Commons (by, by-sa, by-nc, by-nc-sa, by-nd, by-nc-nd).
- El archivo debe terminar con salto de línea (
\n).
Anexos
Este tópico é opcional mas pode ser utilizado para incluir objetos a serem analisados ou demonstrações que podem ser utilizados de exemplo.
Referencias
Descripción de la nueva funcionalidad
Yo, como desarrollador backend, quiero que todas las constantes de dominio de la aplicación (idiomas, roles, meses, tipos de licencia, géneros) estén centralizadas en
core/choices.py, para que todos los modelos y formularios del proyecto utilicen una única fuente de verdad, facilitando el mantenimiento y la internacionalización.Criterios de aceptación
core/choices.pydebe exponer las siguientes listas:LANGUAGE,ROLE,MONTHS,LICENSE_TYPES,GENDER_CHOICES.ROLE,MONTHS,LICENSE_TYPESyGENDER_CHOICESdeben estar envueltos engettext_lazy(_(...))para soporte i18n.LANGUAGEdebe cubrir todos los idiomas del estándar ISO 639-1.LICENSE_TYPESdebe cubrir los seis tipos de licencias Creative Commons (by,by-sa,by-nc,by-nc-sa,by-nd,by-nc-nd).\n).Anexos
Este tópico é opcional mas pode ser utilizado para incluir objetos a serem analisados ou demonstrações que podem ser utilizados de exemplo.
Referencias