Django 1.7 z wieloma nowościami

2
963
Python
Python

Ogłoszono wydanie Django 1.7 – internetowego frameworka wysokiego poziomu, napisanego w Pythonie, z myślą o szybkim rozwoju aplikacji, posiadającym przejrzystą i pragmatyczną architekturę. Aplikacja jest dostępna na licencji BSD. Django opiera się na wzorcu projektowym podobnym do MVC nazywanym MVT (Model-View-Template) i posiada bardzo dużą skalowalność oraz wydajność pod obciążeniem.

Najważniejsze zmiany:

  • Najnowsze Django 1.7 wymaga Pythona 2.7 i wyższych wersji
  • Przebudowano i zmieniono sposób ładowania aplikacji. Pojawił się rejestr programów, w których modele nie odgrywają już głównej roli. Pojawiła się możliwość definiowania konfiguracji dla poszczególnych aplikacji
  • API pól (klasy Field) wymaga teraz metody deconstruct na potrzeby migracji i kluczy kompozytowych. Dzięki wartościom zwracanym przez tą metodę (name, path, args i kwargs w krotce) można serializować dowolne pole do pliku jak i bezpiecznie je skopiować
  • Dodano nowy system migracji, zastępujący zewnętrzną aplikację South
  • Dodano obiekt Prefetch pozwalający dopasowywać zachowanie prefetch_related – można podać QuerySet jak i miejsce przechowywania danych. Można też wołać select_related z prefetchowanej relacji.
  • Dodano metodę as_manager do menedżerów modeli pozwalając tworzyć instancje menedżerów posiadające API QuerySetów, dzięki czemu można korzystać z wielu metod własnych menedżerów. Można też podać menedżer przy iterowaniu po wstecznych relacjach.
  • Dodano nowy framework do sprawdzania poprawności kodu (np. poprawności modeli). Framework jest rozszerzalny i pozwala definiować podpowiedzi dla napotykanych problemów. Komenda check zastępuje istniejącą wcześniej komendę validate.
  • Można tworzyć własne wyszukiwania i transformacje dla ORMa Django. Własne wyszukiwania będą zachowywać się jak te już istniejące (np. lte, icontains). Transformacje odpowiadają za zmianę wartości zawartych w bazie danych tuż przed ich wyszukaniem. Można np. napisać transformację, która wyciąga rok z wartości pola – co może umożliwić np. łączenie zapytań. Można po tych wartościach też filtrować.

Bardziej rozbudowany opis zmian znajdziemy na portalu Biblioteka Riklaunima we wpisie: Duże i ciekawe zmiany w Django 1.7.

Poprzedni artykułMidnight Commander 4.8.13
Następny artykułBoycott systemd, czyli sprzeciw wobec polityki rozwoju i wdrażania systemd na Linuksie
Michał Olber
Interesuję się głównie sprzętem i działaniem jego pod systemami GNU/Linux. Testuję różne dystrybucje i robię recenzje. Interesuję się działaniem sprzętu pod Linuksem, dzięki czemu wiem, jaki zestaw komputerowy wybierać :)

2 KOMENTARZE

ZOSTAW ODPOWIEDŹ

Proszę wpisać swój komentarz!
Proszę podać swoje imię tutaj