LINUX.ORG.RU

Новый релиз фреймворка Django 1.4

 , , ,


0

1

С опозданием на несколько недель вышел новый мажорный релиз фреймворка для разработки веб-приложений на языке Python − Django 1.4. Список изменений весьма обширен, наиболее интересные из них:

  • Продвинутая поддержка часовых поясов (timezone).
  • Поддержка браузерных фреймворков для тестирования (например, Selenium).
  • Шаблоны для создания новых проектов.
  • Улучшена поддержка WSGI.
  • Поддержка SELECT FOR UPDATE в ORM, которая позволяет заблокировать доступ на чтение и удаление к записям, соответствующим запросу.
  • Теперь можно хранить данные пользовательской сессии в cookie.
  • Добавлен метод Model.objects.bulk_create для эффективной вставки множества записей в БД.
  • Добавлен метод QuerySet.prefetch_related, схожий с известным методом select_related, но который более эффективно работает в некоторых сложных ситуациях (например, для отношений многое-ко-многим, или при использовании GenericForeignKey).
  • Улучшено хеширование паролей. Теперь используется алгоритм PBKDF2.
  • Страницы встроенной админки теперь имеют HTML5 Doctype.
  • Улучшения админки: улучшены фильтры, добавлена возможность множественной сортировки.
  • FormWizard переписан с использованием class-based views.
  • Добавлен метод reverse_lazy, позволяющий использовать обратный резолвинг URL (django.core.urlresolvers.reverse) до загрузки URLConf.
  • Улучшена поддержка интернационализации URL.
  • Улучшен вывод отладочной информации при ошибках в шаблонах.
  • Добавлена защита от Clickjacking (выключена по умолчанию для обратной совместимости).
  • Улучшена защита от CSRF.

Надо заметить, что в релизе 1.4 убрана поддержка Python 2.4, а в релизе 1.5 будет добавлена экспериментальная поддержка Python 3, о чем можно почитать здесь.

Список изменений, ломающих обратную совместимость

Список функций, не рекомендуемых для использования (deprecated)

>>> Полный список нововведений

★★★★★

Проверено: DoctorSinus ()
Последнее исправление: Silent (всего исправлений: 4)
Ответ на: комментарий от sphericalhorse

Это смотря что тебе нужно от Джанги. А вообще-то с таким сложными и мощными продуктами как Джанго процесс обучения не прекращается никогда. Всегда найдется что-то что ты до этого не знал. Но, лично меня, это устраивает.

anonymous
()
Ответ на: комментарий от hobbit

сколько там 2.4 питону лет уже?

поддержка 2.4 означает, что секьюрити-апдейты не будут использовать 2.5+ фичи.

Так что никто ничего переписывать вас не заставляет. Запускайте свой legacy-код на любом питоне 2.х старше той версии, для которой изначально его писали.

Что до перехода 2.х->3.х, никто поддержку питон2.7 в обозримом будущем отменять не грозился, вроде. поправьте, если я не прав

MyTrooName ★★★★★
()
Ответ на: комментарий от hobbit

Вот ничто не расхолаживает изучать язык так, как подобные замечания. Если мой исходник через 2 года надо отправлять в топку или кардинально переписывать, в топку такой язык.

Вообще-то здесь речь прежде всего о том, что джанга не будет работать с питоном меньше, чем 2.5.

В самой джанге ломается между релизами гораздо больше.

В питонах 2.4-2.7 обратная совместимость вполне (её поддерживали, по крайней мере, лично я не нарывался не на что).

Питон 3 (наконец-то) юникодный. Тут ничего не попишешь, это надо было сделать (лучше конечно это было сделать в питоне 2, да)

sv75 ★★★★★
()
Ответ на: комментарий от r_asian

Писать ресурс который надо будет поддерживать долгие годы на Java? Да нахрен надо такое счастье.

Неужели вы про твиттер не слышали? (Если что, он на скале). Это раз, а во вторых энтерпрайз-сайтов много на джава. У IBM тогоже. Но да, всякие говоносоциальные сеточки на Java пишут редко.

theos ★★★
()
Ответ на: комментарий от hobbit

Вот ничто не расхолаживает изучать язык так, как подобные замечания. Если мой исходник через 2 года надо отправлять в топку или кардинально переписывать, в топку такой язык.

Вы не понимаете принципов жизни веб-приложения. И пытаетесь её принципиально неправильно померить.

deb
()
Ответ на: комментарий от hobbit

Ну да, конечно. Буквально на днях переносил систему коммерческого учёта электроэнергии с дистра 2003-го года. Там в оригинале питон2.3 и плюсы. Питоновская часть завелась сходу на python2.6 из debian squeeze, а плюсовая не собирается с glibc >=2.10.

Это именно что джангопроблема, если тут вообще есть какая-то проблема. Они используют новые фичи языка, которых нет в 2.4 и всё. Два года назад написанный на питоне2.5 и джанге 1.0 код будет легко и непринужденно работать на питоне2.7 и джанге 1.0.

Snorg
()

Python

Этим всё сказано.

shahid ★★★★★
()

Django
Python

sort of маргинальщина

anonymous
()

в релизе 1.5 будет добавлена экспериментальная поддержка Python 3

неужели?! я думал, что этого никогда не будет

dotbg ★★★★
()
Ответ на: комментарий от s9gf4ult

к тому же, это опционально. и не всегда есьт потенциальная опасность. например - магазин с корзиной в кукисах

MyTrooName ★★★★★
()
Ответ на: комментарий от s9gf4ult

Это опциональное решение. По дефолту данные хранятся в базе. Но в высоконагруженных приложениях, где в сессиях не хранятся сверхважные данные, вполне можно и положить в куки. Помню, когда-то яндексовый сервис «Куда все идут» лег из-за сессий в БД.

Ну и ежу понятно, что данные в куках шифруются, а приватный ключ - на сервере.

provaton ★★★★★
() автор топика
Ответ на: комментарий от theos

всякие говоносоциальные сеточки на Java пишут редко.

их вообще не так и часто пишут

dotbg ★★★★
()
Ответ на: комментарий от hobbit

Ну это вообще особенность Питона, но при условии, как динамично он развивается, это скорее плюс, чем минус. Когда появляется, более удобный способ сделать, что-то старый способ чаще всего уходит. There should be one — and preferably only one — obvious way to do it.

nikita-b
()
Ответ на: комментарий от hobbit

> С тулкитами возникают проблемы, но это уже не проблемы языка.

Ну так на голом языке без библиотек и тулкитов пишутся только хелловорлды. Если честно, мог бы и по-тоньше вбросить, ты ж умеешь.

provaton ★★★★★
() автор топика
Ответ на: комментарий от provaton

Приватный ключ один на все сессионные куки, иначе теряется смысл сессий построенных на хранении сессионных данных в куках.

У данного метода только один существенный недостаток - ограниченный объем данных который можно хранить в сессиях

yanka ★★
()

А MSSQL оно уже держит?

А то osqa на django 1.3 ставил не так давно - на редкость унылая поддержка сабжа.

malbolge ★★
()
Ответ на: комментарий от sphericalhorse

ща уже получше, там типа MVC, но общую картину это не меняет

asmer
()
Ответ на: комментарий от deb

Вы не понимаете принципов жизни веб-приложения. И пытаетесь её принципиально неправильно померить.

Это намёк на то, что веб-приложениям нужна ограниченная жизнь, чтобы было зачем её поддерживать?

Ну и на питоне, как я понимаю, не только веб.

hobbit ★★★★★
()

релиз фреймворка Django 1.4

Школота будет довольна.

bOshist
()
Ответ на: комментарий от queen3

Если ты уже знаешь VB - почему нет?

zz ★★★★
()
Ответ на: комментарий от gnunixon

Сравнивать рельсы и джанго можно только в том случае
если совершенно не понимаешь для чего предназначены
эти фрамеворки ! И если уж нужен аналог рельсов из стана
питона то это ТГ ( теперь уже 2 ) .

--
Мх

anonymous
()

Отличная новость

И, гмм кто нибудь может подкинуть список программ написанных чисто на Python, и список веб-проектов которые активно его юзают?

// все никак не могу решить для себя: c/c++ или python...

muteki_okami
()
Ответ на: комментарий от zz

Между мажорными?

И вспоминать не хочу, неприятно. )

sv75 ★★★★★
()
Ответ на: Отличная новость от muteki_okami

все никак не могу решить для себя: c/c++ или python...

«Чего-то хотелось: не то конституции, не то севрюжины с хреном»

sv75 ★★★★★
()
Ответ на: комментарий от anonymous

Сравнивать рельсы и джанго можно только в том случае

если совершенно не понимаешь для чего предназначены эти фрамеворки !

Думаю предназначены для создания веб-сайтов. А для чего на самом деле они предназначены и чем различаются кроме языков?

anonymous
()
Ответ на: комментарий от anonymous

А для чего на самом деле они предназначены и чем различаются кроме языков?

На джанго может делать только новостные сайты, а на рельсах — тормозящие стартапы.

baverman ★★★
()
Ответ на: комментарий от sv75

интересное сравнение ЯП

А вот так если серьезно задуматься, то выбор достаточно сложный. Программисты и там, и там нужны. Зар/платы тоже вроде на одном уровне. Наверное надо по существующим проектам смотреть...а вообще такой вот вопрос появился:

- По каким именно критериям, современные программисты ищут себе работу? На что нужно больше внимания обращать, и как понять будет ли интересен кодинг для десктоп технологий, или же вэб?

muteki_okami
()
Ответ на: скажем от muteki_okami

curse.com disq.us жанга. во втором случае правда достаточно условно.

zz ★★★★
()
Ответ на: Отличная новость от muteki_okami

И, гмм кто нибудь может подкинуть список программ написанных чисто на Python, и список веб-проектов которые активно его юзают?

http://ru.wikipedia.org/wiki/Проект:Компьютерные_технологии/Списки/Список_про...

все никак не могу решить для себя: c/c++ или python...

Одно другому не мешает...

Rodegast ★★★★★
()
Ответ на: Отличная новость от muteki_okami

c/c++ для системных задач, либо для прог, у которых одна из фич - легковесность.

python - для всей остальной прикладухи, для веба, для скриптов

MyTrooName ★★★★★
()
Ответ на: интересное сравнение ЯП от muteki_okami

По каким именно критериям, современные программисты ищут себе работу

Это классика жанра: начинающие спецы ищут ЗП и знаний, продвинутые - интересных проектов и известности, старики - пытаются доказать всем, что они еще о-го-го!

А вы собсно кто?

anonymous
()
Ответ на: комментарий от r_asian

Тем, что не похапэ. Очевидно же.

А что, кто-то даже похапе осилить не может?

замечено, что если разработчик продолжает пользоваться пых-пых больше года, в его черепной коробке начинаются необратимые процессы и, в конечном счете, наступает полная деградация. то же самое, кстати, относится к дельфям и перлу.

anonymous
()
Ответ на: комментарий от anonymous

Я..гмм дайте подумать

Я ищу работу, которая будет адекватно. Под адекватностью имею в виду, что-бы ЗП была чуть выше средней, задачи интересные, но не упоротые. Ну и конечно, что-бы набраться опыта, обучиться чему нибудь. Да и просто хочется иметь в резюме не очередной проект «велосипеда с квадратными колесами», а что-то после чего возможно начну свой проект.

muteki_okami
()
Ответ на: комментарий от baverman

На джанго может делать только новостные сайты, а на рельсах — тормозящие стартапы

Господи, что за феерическая чушь? На Джанге можно делать любые сайты, я тебе это гарантирую.

FishHook
()
Ответ на: комментарий от anonymous

хмм

С русским никогда особо не дружил. Буду патчить :)

что-бы -> чтобы

чему нибудь -> чему-нибудь

что то -> что-то.

Hotfix во имя Лора.

muteki_okami
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.