El Blog de Trespams

Blog personal sobre tecnologia, gestió de projectes i coses que se me passen pel cap

AppfuseDjango actualitzat a la versió de Django

Avui he actualitzat AppfuseDjango per a que funcioni amb la darrera versió de Django.

Darrerament hi ha molts canvis a Django, ja atracant-se a la versió 1.0, i alguns d'ells són incompatibles amb les versions anteriors.

La idea de l'aplicació és que servesqui de punt de partida per altres aplicacions i com a codi de mostra per a la gent que està començant amb Django. El tutorial de Django està força bé per començar, però després, quan has de fer una aplicació amb manteniments, internacionalització, etc. es queda un poco curt. No hi ha res a dir, l'objectiu del tutorial és ensenyar i el d'una aplicació com AppfuseDjango l'objectiu és ser un punt de partida.

De fet ja fa estona que no faig servir la utilitat de Django per a crear projectes i aplicacions, el que faig és fer un export d'AppfuseDjango i començar a partir d'allà.

Pels qui us demaneu què s'hi pot trobar:

  • Un manteniment CRUD: llistat, alta, baixa i modificació d'un registre.
  • Exemple de paginació
  • Mostra com internacionalitzar una aplicació.
  • Un exemples de com fer anar l'Ajax i json amb extjs i jqgrid

Però el més important crec que no és tant el codi que es mostra sinó que es vegi l'organització d'un projecte.

Veureu que s'ha tret la configuració del settings.py cap a un properties.py, que no trobareu al codi, sinó que hi ha un properties.py.template. Això es fa per deixar l'aplicació preparada per l'entorn de producció i per a ser utilitzada per molts desenvolupadors. Fent-ho així, poden tenir distintes configuracions per a cada un dels desenvolupadors i com que són pròpies de cada un estan fora del control de versions de l'aplicació. Tanmateix sols és cosa de copiar el properties.py.template i modificar-ho per a adaptar-ho a les nostres necessitats (directori, caché, etc.).

Una altra cosa que he anat posant són algunes optimitzacions i hacks útils trobases pels fòrums o de collita pròpia. Entre elles una que ens permet tenir una caché de plana que depèn de l'idioma de visualització, és a dir, es genera la clau de la caché amb l'idioma de l'usuari.

Com a darrera incorporació, un mètode molt elegant d'editar i inserir registres que fa ús de l'avaluació pererosa en Python, trobat a themorgue.org, el codi ha quedat molt net, potser una mica menys entenidor que abans, però l'estalvi en línies de codi ho compensa.

Els plans futurs crear branques amb distints tipus de projectes per assolir l'objectiu de tenir el punt de partida bàsic per a cada tipus d'aplicació: html pura, html amb ajax, RIA, etc. i així sols tenir que baixar l'estrictament necessari en cada cas.

blog comments powered by Disqus