En aquesta UF treballem amb frameworks web, en particular Django i Laravel, però podria aplicar-se a d'altres. Treballem amb sistema de fites.
[15’]
Clona el projecte https://github.com/aws2/djvota i posa’l en marxa amb una BD a la màquina local.
Es tracta d’una base simplificada per a una aplicació per a votacions.
Comprova que funciona accedint al admin panel i logant-te amb un usuari.
[15’]
Activa els models existents (Votacio i Opcio) a l’admin panel de Django.
Omple al menys 2 Votacions amb 3 Opcions cadascuna.
Feu que els títols de les votacions i opcions apareguin als llistats d’objectes de l’admin panel (és a dir, que no aparegui «Votacio object (1)», per exemple).
Exemple:
[20’]
El projecte DjVota té els models Votacio i Opcio.
Crea un model anomenat Vot que referencii Opcio i User per tal què permeti fer votacions.
Per evitar que els usuaris votin dos cops a la mateixa pregunta, la combinació [Votacio,User] de Vot ha de ser clau única. Ho podeu resoldre amb unique_together
al Meta model.
Mostra el nou model a l’admin panel.
Crea un vot via django shell i visualitza’l a l’admin panel.
[ 20’ ]
Crea una comanda personalitzada per executar una càrrega de dades.
Utilitza Faker per crear 10 Votacions, amb 4 opcions cadascuna, 100 usuaris dels quals votin una opció aleatòria la meitat d’ells.
[15’]
Afegim una view a /vota/votacions/llista del projecte DjVota que ens permeti visualitzar totes les Votacions (enunciats de les votacions i prou).
[15’]
Afegim una view a /vota/votacions/afegeix del projecte DjVota amb un formulari que ens permeti afegir un nou objecte Votacio.