RkBlog

Hardware, programming and astronomy tutorials and reviews.

Co nowego w Django 1.5?

Nowa wersja Django oznaczona numerem 1.5 zostanie niebawem wydana. Obecnie dostępna jest druga wersja beta, która pozwala zapoznać się ze (sporymi) zmianami jakie zaszły we frameworku. Pełna lista zmian dostępna jest na djangoproject. Poniżej omówię najważniejsze zmiany i nowości.

Nowości:
  • Możliwość zapisania wybranych pól modelu - metoda "save" modelu obsługuje opcjonalny argument "update_fields" - listę pól jakich wartości mają zostać zapisane.
  • Dodano obsługę własnych modeli użytkownika.
  • Dodano do szablonów tag blokowy {% verbatim %} wewnątrz którego silnik szablonu nie będzie niczego renderował. Przydatne czasami dla kodu JavaScript.
  • Dodano domyślne szablony 404.html i 500.html.
  • Dodano klasę StreamingHttpResponse dla lepszej obsługi strumieniowych treści.
  • GeoDjango zyskało obsługę PostGIS 2.0. Porzucono wsparcie dla GDAL starszego niż 1.5.
  • Dodano eksperymentalne wsparcie dla Pythona 3.2 i nowszego. Oprócz tego obsługiwana jest najnowsza wersja Jythona (ta zgodna z Pythonem 2.7).
Zmiany:
  • Porzucono wsparcie dla Pythona 2.5. Zaleca się stosowanie Pythona 2.7, w ostateczności 2.6.
  • Zawartość kontekstu w TemplateView jest dostępna bez opakowywania w słownik params.
  • Django przeszło na używanie modułu json z biblioteki standardowej. Nie należy już używać django.utils.simplejson.
  • Nie należy już stosować django.utils.markup.
  • Zaszły zmiany w tagu "url". Teraz trzeba podawać nazwy widoku jako łańcuch: {% url "myview" %} a nie {% url myview %}.

Dodanie obsługi Pythona 3 mogło i zapewne stworzyło regresje dla Pythona 2.X. Sama obsługa Pythona 3.X nie była jeszcze produkcyjnie testowana - dlatego jest to jak na razie funkcjonalność "eksperymentalna". Należy testować i zgłaszać napotkane błędy.

RkBlog

Django, 1 January 2013, Piotr Maliński

Comment article