Django version 0.95 release notes¶
Välkommen till Django 0.95 release.
Detta innebär ett betydande framsteg i Django-utvecklingen sedan 0.91-utgåvan i januari 2006. Detaljerna för varje förändring i denna version skulle vara för omfattande för att lista i sin helhet, men en sammanfattning presenteras nedan.
Lämplighet och API-stabilitet¶
Denna version är avsedd att tillhandahålla en stabil referenspunkt för utvecklare som vill arbeta med applikationer på produktionsnivå som använder Django.
Det är dock inte 1.0-versionen, och vi kommer att införa ytterligare ändringar före 1.0. För en tydlig titt på vilka områden av ramverket som kommer att förändras (och vilka som inte kommer att förändras) före 1.0, se filen api-stability.txt
, som finns i distributionens docs/-katalog.
Du kanske har behov av att använda några av de funktioner som är markerade som ”föremål för API-ändringar” i det dokumentet, men det är OK för oss så länge det är OK för dig och så länge du förstår att API:er kan ändras i framtiden.
Lyckligtvis kommer de flesta av Djangos kärn-API: er inte att ändras före version 1.0. Det kommer sannolikt inte att bli en lika stor förändring mellan 0.95 och 1.0-versionerna som det var mellan 0.91 och 0.95.
Ändringar och nya funktioner¶
De stora förändringarna i denna version (för utvecklare som för närvarande använder version 0.91) är ett resultat av sammanslagningen av utvecklingsgrenen ”magic-removal”. Denna gren tog bort ett antal begränsningar i hur Django-koden måste skrivas som var en följd av beslut som fattades under Djangos tidiga dagar, innan den släpptes som öppen källkod. Det är nu möjligt att skriva mer naturlig, pythonisk kod som fungerar som förväntat, och det finns mindre ”svart magi” som händer bakom kulisserna.
Bortsett från det är ett annat huvudtema i den här utgåvan en dramatisk ökning av användbarheten. Vi har gjort otaliga förbättringar av felmeddelanden, dokumentation etc. för att förbättra livskvaliteten för utvecklare.
De nya funktioner och ändringar som introducerades i 0.95 inkluderar:
Django använder nu ett mer konsekvent och naturligt filtreringsgränssnitt för att hämta objekt från databasen.
Användardefinierade modeller, funktioner och konstanter visas nu i det modulnamnrymd de definierades i. (Tidigare överfördes allt på ett magiskt sätt till namnområdet
django.models.*
)Vissa valfria applikationer, såsom FlatPage, Sites och Redirects, har frikopplats och flyttats till
django.contrib
. Om du inte vill använda dessa applikationer behöver du inte längre installera deras databastabeller.Django har nu stöd för att hantera databastransaktioner.
Vi har lagt till möjligheten att skriva anpassade backends för autentisering och auktorisering för att autentisera användare mot alternativa system, t.ex. LDAP.
Vi har gjort det enklare att lägga till anpassade funktioner på tabellnivå i modeller med hjälp av ett nytt API för ”Manager”.
Det är nu möjligt att använda Django utan en databas. Detta innebär helt enkelt att ramverket inte längre kräver att du har en fungerande databas bara för att servera dynamiska sidor. Med andra ord kan du bara använda URLconfs/views på egen hand. Tidigare krävde ramverket att en databas konfigurerades, oavsett om du faktiskt använde den eller inte.
Det är nu mer explicit och naturligt att åsidosätta metoderna
save()
ochdelete()
på modeller, i stället för att behöva koppla in sig på metodkrokarnapre_save()
ochpost_save()
.Enskilda delar av ramverket kan nu konfigureras utan att en miljövariabel behöver ställas in. Detta gör det möjligt att använda till exempel Djangos templating-system i andra applikationer.
Fler och fler delar av ramverket har internationaliserats, eftersom vi har utökat stödet för internationalisering (i18n). Djangos kodbas, inklusive kod och mallar, har nu översatts, åtminstone delvis, till 31 språk. Från arabiska till kinesiska till ungerska till walesiska, det är nu möjligt att använda Djangos administratörswebbplats på ditt modersmål.
Antalet ändringar som krävs för att porta från 0.91-kompatibel kod till 0.95-kodbasen är i vissa fall betydande. De är dock för det mesta ganska rutinmässiga och behöver bara göras en gång. En lista över nödvändiga ändringar beskrivs på wikisidan Removing The Magic. Där finns också en enkel checklista som kan användas som referens när porteringen genomförs.
Problemrapporter och att få hjälp¶
Behöver du hjälp med att lösa ett problem med Django? Dokumentationen i distributionen finns också tillgänglig online på Djangos webbplats. Dokumentet FAQ rekommenderas särskilt, eftersom det innehåller ett antal frågor som kommer upp gång på gång.
För mer personlig hjälp är e-postlistan django-users en mycket aktiv lista med mer än 2 000 prenumeranter som kan hjälpa dig att lösa alla typer av Django-problem. Vi rekommenderar dock att du söker i arkiven först, eftersom många vanliga frågor dyker upp med viss regelbundenhet, och ett visst problem kan redan ha besvarats.
Slutligen, för dem som föredrar den mer omedelbara feedback som IRC erbjuder, finns det en #django
-kanal på irc.libera.chat
som regelbundet befolkas av Django-användare och utvecklare från hela världen. Snälla människor är vanligtvis tillgängliga när som helst på dygnet - för att hjälpa till eller bara för att chatta.
Tack för att du använder Django!
Django-teamet juli 2006