Веб-фреймворк для Питона. Один из лучших способов программировать для веба.

Джанговские агрегации

15.01.2009

Django

Сделали: http://docs.djangoproject.com/en/dev/topics/db/aggregation/! Особо приглянувшиеся мне вещи: Store.objects.annotate(Count('books__authors')) Store — это магазин, у него many-to-many на Book, у которого есть many-to-many на Author. Тут делается join по всем нужным таблицам и group by на них. * Book.objects.annotate(num_authors=Count('authors')).filter(num_authors__gt=1) Я очень рад, что having не стали делать отдельным понятием. Это просто фильтр. А ...

Изменённые данные в форме

14.01.2009

Django

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

Как работает SM.Org

Недавно расквитался в первом приближении с давно висящей и давящую на голову задачкой: опубликовал исходный код всех Джанго-приложений, которые поддерживают разные части SoftwareManiacs.Org. И меня посетила мысль поделиться тем, как оно вообще у меня тут все живет. Сайт SoftwareManiacs.Org работает на VPS-сервере (у компании TekTonic) и представляет собой сборную солянку ...

Выражения в джанговских запросах

21.11.2008

Django

Сегодня был опубликован план на следующий релиз Джанго 1.1. В нем много всякого хорошего, но мое внимание привлекла красота реализации одной из must-have фич, и я решил поделиться с вами неожиданно нахлынувшей на меня радостью :-). Заодно кто-то, как я, узнает новую для себя возможность Питона. Речь идет о тикете ...

Схема файлового бэкенда Джанго

16.11.2008

Django

По долгу службы ковырялся тут внутри у Джанго вокруг работы с файлами. Всякие хранилища, файловые поля, дескрипторы, врапперы... Признаться, штука вышла далеко не простая ("а я еще во-о-от такой помню..."). Я начал набрасывать себе схему того, как объекты друг с другом взаимодействуют, а потом решил ее причесать и выложить, чтобы ...

Родительский контекст в inclusion-тегах

09.11.2008

Django

Чтобы все не решили, что я перестал писать технические посты про Django, вот маленький пост средней полезности. Если вы какое-то время работаете с Django и используете inclusion-теги, то наверняка сталкивались с неудобством, что кроме переменных контекста, возвращаемого из тега, в шаблон не попадает ничего. В частности, там нет всяких полезных ...

Vooid

04.10.2008

OpenID, Django

На прошедшем минибаре для веб-программистов я кратко рассказывал про то, как хорошо, что проект в Джанго строится из отдельных приложений. Не знаю, насколько это было полезно всем остальным, но лично меня это окончательно сподвигло на то, что надо делиться! SoftwareManiacs.Org состоит из нескольких приложений, и пару из них вполне можно ...

mysql_replicated

10.09.2008

Django

Недавно Саша Кошелев проапдейтил наш репликационный Джанго-бэкенд для MySQL под новый джанговский API, а я наконец переименовал его в "mysql_replicated" (потому что "mysql_cluster" был похож на совершенно другой продукт). Кому интересно, можно брать и пользоваться. P.S. Кстати, несмотря на предречения, что эта штука обязательно сломается, уже полгода никаких проблем с ...

Транк — вот что главное

03.09.2008

Django

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

Празднование релиза Django 1.0

28.08.2008

Django

Куда все идутЯ приглашаю:07.09.2008 15:00, Б2, Большая Садовая, д. 8 (м. Маяковская выход в сторону Театра Сатиры), метро МаяковскаяПразднование релиза Django 1.0Есть идея отпраздновать вместе с остальным миром долгожданный релиз Django 1.0! Приглашаются все, кому это интересно. Познакомимся (кто не знаком), пообщаемся, расскажем друг о друге, сделаем фотки и пожелаем ...

Спринт финишировал

13.07.2008

Яндекс, Django

Ну что же, мы поспринтовали! С меня — короткий отчет. Из собиравшихся 30 человек пришли, если не ошибаюсь, 18. Учитывая всякие технические накладки, начали спринт мы где-то через час после назначенного времени. WiFi был, электричество тоже :-). И тут я должен сказать, что думал, что этого будет достаточно. Но ошибся. ...

Спринт!

03.07.2008

Яндекс, Django

Итак, вроде бы мы все утрясли, и спринту быть! Чтобы не повторяться о подробностях и порядке "регистрации", сошлюсь на свой пост в корп-блог. Да, вот забыл: кто уже написал в прошлом посте, что придет, пришлите пожалуйста еще разок свои имя и фамилию мне на isagalaev@yandex-team.ru. Надо надо заявку в охрану ...

Может, спринт?

30.06.2008

Яндекс, Django

У меня есть идея провести 10-12 июля (четверг-суббота) Джанго-спринт в стенах Яндекса в Москве. То есть, собраться заинтересованным людям командой и поработать над Джангой вживую вместе с остальным миром. Описание грядущего спринта уже какое-то время лежит на wiki. Вкратце — будем доделывать newforms-admin. В Яндексе у меня есть предварительная договоренность, ...

Exception #08. Отчет.

01.06.2008

Django

Аж на неделю задержался я с отчетом об Exception Masterclass #08. Да и сейчас тоже не все материалы выложу — видео я пока так и не пожал. Доделаю на следующей неделе, видимо. UPDATE: Доделал Киев На этот Киев своих гостей погодой не радовал. В оба дня события было прохладно, ветренно ...

Тема на Exception #08

16.05.2008

Django

Exception успел поменять номер с прошлого поста :-). А я таки определился с темой: по совету Макса Ищенко буду интегрировать Django с каким-нибудь WSGI-проектом. Причем, видимо, на Pylons. Мы с ним также наметили подробнее, что именно входит в понятие "интеграция". включение Джанго-приложение в URL-пространство чужого проекта с корректной генерацией ссылок ...

Exception Masterclass #09

07.05.2008

Яндекс, Django

24 мая в Киеве состоится очередной из серии семинаров — Exception Masterclass #09. Как уже поняли наиболее прозорливые читатели, семинар будет проходит в виде мастер-класса. И как догадываются самые прозорливые из тех прозорливых, я пишу про это, потому что буду там с одним из мастер-классов выступать. Ура! Однако у меня ...

Рефакторинг Queryset'ов

27.04.2008

Django

Сегодня Малколм Трединник влил бранч queryset-refactoring в Джановский транк. Это изменение по крутости в принципе сравнимо с давнишней демагизацией. Однако в отличие от нее, на этот раз все гораздо более обратно совместимо. Вообще, Малколм — велик. Фактически он переделал с нуля всю душу конструирования запросов в джанговском ORM, превратив ее ...

Google App Engine

09.04.2008

Python, Django

Позвольте присоединиться ко всеобщему шуму про Google App Engine со слегка упорядоченным дампом своих мыслей последней пары дней. Хорошо! Питон, Питон, Питон. Само по себе то, что Google сделал массовый специализированный хостинг приложений именно с этим языком — это увесистый такой аргумент для бюрократов, которые не очень любят разбираться в ...

Django со стороны клиентской части веба

04.04.2008

Web, Django

Никак не мог пройти мимо такой замечательной статьи Гарета Рашгроува: "Why the webstandards world appears to be choosing Django". Давно не помню, что столько раз по ходу текста внутренне согласно кивал: "Ага, так и есть". И про простые шаблоны, и про отсутствие генерации javascript'а, и про уважение HTTP... Замечательно написано. ...

Тикет 2070: лед тронулся!

20.03.2008

Django

"2070" — это магические цифры, которые для джангиста означают номер давнего, многострадального и считавшегося некоторыми обреченным тикета, который отвечает за то, чтобы Джанго загружаемые в нее через веб файлы не грузила целиком в память. И вот буквально вчера лед тронулся! Помимо того, что меня это радует в принципе, у меня ...