Django-1.0 frigivet
Hvem er ved at opgradere, er der udfordringer, tips og tricks
Jeg har opgraderet min blog til django 1.0. Det gik rimeligt smertefrit.
Så vidt jeg husker, var der kun ganske få ting, der skulle laves om:
- Omdåben af maxlength til max_length på CharFields
- Automatisk html escaping i templatesystemet
- Imagefields i en model tilføjer ikke længere en get_<attribute>_url() metode, men tilgås istedet som object.<attribute>.url
Jeg blev ret overrasket da jeg fandt ud af at for at aktivere en model i admin, ikke længere skal lave en
[code=python]
class Admin:
pass
[/code]
men istedet
[code=python]
admin.site.register(Model(,ModelAdmin))
[/code]
Ja, Django's administration er blevet porteret til newforms og samtidig har de flyttet den adminspecifike notation ud af modellerne for at give en bedre opdeling på tingene.
Hvis ikke man havde noget i sin gamle Admin-klasse kan det klares med admin.site.register(<modelname>). Havde man derimod noget i den som fx. "ordering = ('name',)", oprettes der en speciel klasse som beskriver de ting og som nedarver fra django.contrib.admin.AdminModel. Den tilknyttes så med admin.site.register(<modelnavn>, <adminmodelnavn>).
Se eventuelt porteringsguiden hvor der står meget mere http://docs.djangoproject.com/en/dev/releases/1.0-porting-guide.
Fedt link, Lau. Havde godt fanget det der med AdminModels, og synes i virkeligheden at det er smart.
Nu nævner du lige præcis ordering. Den ligger da i Meta-klasssen i modellen? Den har jo ikke nødvendigvis kun noget med admin-modulet at gøre.
Du har ret med ordering, men jeg mener faktisk den ligger begge steder, da man nogle gange ønsker en bestemt rækkefølge i admin uden af påvirke de querysets man ellers bruger.
