Обновить
16.05

Django *

Фреймворк для веб-приложений на Python

Сначала показывать
Порог рейтинга
Уровень сложности

django-php: PHP в шаблонах Django

Время на прочтение1 мин
Количество просмотров11K
django-phpВ этом посте я расскажу, как подружить Django и PHP с помощью приложения django-php.

Нам понадобится бинарник php-cgi, установленный в системе. Проверить его наличие можно, введя в терминале

$ which php-cgi

Читать дальше →

Шаблоны проектов на основе PasteScript

Время на прочтение3 мин
Количество просмотров1.6K
С увеличением количества проектов встала проблема автоматизации создания каркаса под новые приложения. До недавнего времени новые проекты мы создавали путем копирования заготовленного шаблонного проекта и изменения различных настроек в разных местах проекта. Само собой это убивало достаточно много времени.

Попытки решить эту проблему вывели меня на проект под названием Python Paste. В общих чертах — это набор утилит для создания веб-приложений, к примеру можно создать свой фреймворк (в Pylons используют именно его). Помимо утилит для веба Python Paste содержит модуль Paste Script, с помощью которого можно создавать шаблоны-заготовки и на основе них генерировать проекты.
Читать дальше →

Конкурс на дизайн RedsolutionCMS

Время на прочтение2 мин
Количество просмотров848

Прошлой осенью мы писали про разработанную нами RedsolutionCMS основанную на Django и выпущенную под лицензией GNU GPL v.3. Сегодня мы объявляем конкурс на лучший шаблон для сайта, развернутого с помощью Redsolution CMS. От участников требуется всего лишь css файлы и изобажения для .html файлов (архив можно скачать на сайте). Все присланные работы должны иметь лицензию CC-BY и не должны включать в себя материалы, противоречащие ей. Количество работ от одного автора не ограничено.
Основная цель данного конкурса — развитие проекта RedsolutionCMS и улучшение внешнего вида сайта, развернутого с его помощью.
Читать дальше →

Конвертируем и загружаем на YouTube

Время на прочтение8 мин
Количество просмотров3.3K
Доброго времени суток!

Итак начнём. В статье я опишу краткий проект на django, который конвертирует/загружает видео-ролики на Ваш канал YouTube.
Подробнее под катом

Асинхронные задания в Django c помощью Celery

Время на прочтение5 мин
Количество просмотров66K
Приветствую!
Думаю, большинство разработчиков Django слышали о Celery — системе асинхронного выполнения заданий, а многие даже активно её используют.

Около года назад на хабре была довольная хорошая статья, рассказывающая о том, как использовать Celery. Однако, как было упомянуто в заключении, уже вышла Сelery 2.0 (на данный момент стабильной версией является 2.2.7), где интеграция с django была вынесена в отдельный пакет, а также произошли другие изменения.

Данная статья будет полезна прежде всего новичкам, которые начинают работать с Django, и им требутся что-то, способное выполнять асинхронные и/или периодические задания в системе (например очистку устаревших сессий). Я покажу как установить и настроить Сelery для работы с Django от начала до конца, а также расскажу про некоторые другие полезные настройки и подводные камни.
Итак, приступим.

Redsolution CMS: инструкция по добавлению своего модуля

Время на прочтение3 мин
Количество просмотров2.2K
Прошлой осенью мы писали про нашу разработку — RedsolutionCMS. Разработка с неправильным названием, потому что на деле никаким контентом она не управляет. По своей сути RedsolutionCMS — это система развертывания и начальной настройки веб-проектов на Django. В этой статье я постараюсь показать наглядно все плюсы нашей эм… RedsolutionCMS :)
Раз у нас система модульная, то и допишем к ней ещё один модуль. Примером будет django-photologue — модуль публикации фотогалерей на сайт. Под катом — туториал как написать и опубликовать установщик вашего любимого (это не обязательно должен быть photologue) модуля.

Читать дальше →

Разработка IFrame приложения для ВКонтакта

Время на прочтение9 мин
Количество просмотров18K
Несмотря на то, что данная социалка «горячо любима» аудиторией хабра, я всё же решил рискнуть и опубликовать небольшие заметки посвящённые разработке приложений на Джанге под неё.

Предупреждаю, некоторые из них вполне капитанские, а некоторые вообще не имеют отношения к Вконтакте или даже Джанге, в общем, не обессудьте.

Под катом:
  • django-vkontakte-iframe и vkontakte
  • Загрузка приложения на стену
  • Флеш-заглушка
  • Сессия в горячо любимом IE
  • Все «flashVars» передаются GET запросом
  • Работа во фрейме
  • Доступ к информации пользователя
  • Проверка валидности вёрстки
  • JSLint ваш друг и товарищ
  • Генерирование миниатюр
  • Модерация через прокси-модель
  • Импорт настроек
  • Оптимизация

На правах рекламы: Приложение называется «Коллекционер» и предназначено для людей занимающихся коллекционированием монет, марок, карт и других предметов. В данный момент наполнен лишь каталог карт MTG, но в будущем будут созданы и наполнены каталоги для других предметов. Разумеется, мы с радостью выслушаем все ваши предложения и конструктивную критику.
Читать дальше →

Ускорение тестирования Django-проектов

Время на прочтение6 мин
Количество просмотров5.1K
Вопросу тестирования Django-приложений уделено много внимания в различных статьях, в том числе и на Хабре. Почти в каждой из них хотя бы пара предложений посвящена способам и хакам для ускорения прохождения тестов, и поэтому сказать что-то принципиально новое здесь непросто.

В проекте панели управления хостингом, разработкой которой я занимаюсь значительную часть времени своей работы в NetAngels, насчитывается 120 таблиц и при тестировании загружается порядка 500 объектов из fixtures. Нельзя сказать, что это пугающе много, однако создание всех таблиц, добавление индексов и загрузка объектов при каждом запуске теста довольно сильно напрягают, особенно, если запускается всего один или пара тестов.

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

Тестирование проектов Django

Время на прочтение5 мин
Количество просмотров58K
В предыдущем посте мы бегло рассмотрели некоторые приемы тестирования кода на питоне. Все это применимо также и к Django-проектам, безусловно, но есть достаточное количество подводных камней и просто интересных штук, о которых я попробую рассказать.

Краткое содержание поста:
  1. тестирование веб-сайтов — это сложно и непонятно
  2. юнит-тесты в django
  3. тестовая БД и как с ней бороться
  4. smoke testing
  5. покрытие кода (code coverage)
Читать дальше →

10 причин, почему мы перешли на PyCharm

Время на прочтение3 мин
Количество просмотров88K
Совсем недавно мы начали плавный перевод разработки наших проектов с Eclipse + PyDev на PyCharm. Это такая замечательная среда разработки от компании JetBrains, которая специализируется на создании продуктов для программистов, в том числе всяких IDE.

Если вы делаете сайты на Джанго, но еще не оценили в полной мере Пайчарм, мы подготовили небольшой список фич, которые определили наш выбор в его пользу. В основном, это конечно же, функционал, которого нам не хватало в Эклипсе, либо фичи, которые были реализованы неполно или менее удобно. Само собой, это лишь вершина айсберга фич, которые есть в PyCharm, для примера таблица сравнения популярных IDE.

Читать дальше →

Ограничиваем интерфейс редактирования с помощью прокси-моделей

Время на прочтение2 мин
Количество просмотров9.7K
Административный интерфейс джанго позволяет настраивать права доступа к объектам различных приложений. Для любой модели любого приложения вы можете разрешить пользователю три действия: добавлять новые объекты, редактировать и удалять существующие объекты.

А что делать, если мы хотим разрешить пользователю редактировать только часть полей? И в то же время оставить возможность другим пользователям редактировать все поля.
Читать дальше →

Настройка сервера для django-проектов с нуля

Время на прочтение6 мин
Количество просмотров41K
Хочу поделиться опытом настройки сервера для django-проектов. Так вышло, что мне часто приходится настраивать с нуля VPS-сервера для запуска на них django-сайтов. Как-то мне в голову пришла идея записать пошагово процесс настройки. Оказалось, что “по бумажке” выполнять эти рутинные операции гораздо проще и быстрее — все нюансы записаны, трудно что-то упустить. Дальше больше — я превратил инструкцию в самостоятельный shell-скрипт — запустил и сервер готов. Я думаю, некоторым python-разработчикам, особенно начинающим, будет полезно ознакомиться с содержимым скрипта. С некоторыми доработками вы, возможно, захотите использовать его в своей практике.
Читать дальше →

Профили пользователей: плюсы, минусы, подводные камни

Время на прочтение5 мин
Количество просмотров12K
Не секрет, что работу с профилями пользователей в Django иначе как несчастьем не назовёшь. Все мы сталкивались с монолитностью модели auth.User, неадкеватным набором полей у неё, а также всеми теми ухищрениями, к которым приходилось прибегать.

Извращаться приходилось всем: не только пользователям джанги, но и самим её core-разработчикам. Помните, например, как в Django 1.2 внезапно стало возможно использовать в поле username символы собаки (@) и точки? Знаете зачем? Чтобы в качестве логинов можно было использовать адреса e-mail.

Нам, простым пользователям, тоже жилось несладко. Для того, чтобы изменить профиль пользователя, добавив ему какие-нибудь интересных полей — обычная, казалось бы, вещь, да? — приходилось действовать разными способами.
Интересно?

Ближайшие события

jQuery в администрировании

Время на прочтение3 мин
Количество просмотров3.3K
Перевод публикации jQuery in the admin с DjangoAdvent


Обновления r12297 произвели настоящую сенсацию: в директории django/contrib/admin/media/js появился новый файл под названием jquery.js. В администрировании Django это изменение являет собой начало новой эры, эры модных функций, красивых виджетов и улучшенного юзабилити.
Читать дальше →

Django — обработка ошибок в ajax-формах

Время на прочтение5 мин
Количество просмотров17K
Hello everyone!

Все мы знаем что Django — очень мощный и динамично развивающийся фреймворк для создания веб-приложений. Однако, несмотря на наступление эпохи Веб 2.0, в нём всё ещё нет встроенных механизмов для работы с AJAX, в частности отправки и проверки форм. Возможно django просто не хочет навязывать пользователю какой-то js-фреймворк и хочет оставаться гибкой в этом вопросе, но так или иначе при разработке часто требуются формы, работающие через ajax, без перезагрузок страниц.
О создании таких форм и работе с ними и пойдёт речь в данной статье.

Сразу оговорюсь, что идея не нова, и существует несколько библиотек, реализующих требуемую функциональность, например одна из них — http://www.dajaxproject.com/.
Для тех же, кто предпочитает сам управлять взаимодействием клиента с сервером или тех, кто не хочет втягивать в проект дополнительную библиотеку и иметь дело с её багами, я расскажу как изобрести велосипед реализовать механизм самостоятельно и опишу различные способы решения проблемы.
Читать дальше →

Слежка за пользователями в Django

Время на прочтение2 мин
Количество просмотров8.2K
Здравствуй %username%

Начну с того, что у меня есть некий Django портал, на котором пользователям начисляются определенные бонусы за приглашение новых пользователй. Такая себе системе рефералов. Но бонус начисляется только в том случая, если приглашенный пользователь проявляет активность. Сегодня у меня возникло подозрение, что один из моих юзеров завел виртуалов. Попробуем уличить его в этом…
Читать дальше →

Django проект PR Hero: что внутри и полученный опыт

Время на прочтение4 мин
Количество просмотров5.9K

Я хочу продолжить хорошую традицию:
и рассказать об удачных решениях, примененных в Django проекте PR-Hero.

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

А что, если делиться опытом не внутри отдела, а целым сообществом российских джангистов?

что же внутри?!

Релиз Django 1.3

Время на прочтение1 мин
Количество просмотров785
После многих месяцех кропотливой работы, команда разработчиков Django с гордостью сообщает о релизе версии 1.3 этого замечательного фреймворка.

Финальный список изменений доступен на странице документации. А на хабре недавно публиковалась статья о всех ожидаемых нововведениях: «Что будет в django 1.3»

Скачать фреймворк.

Именованные кортежи из выборок

Время на прочтение5 мин
Количество просмотров11K
В Django для ускорения запросов, возвращающих большое количество данных, существуют методы QuerySetvalues() и values_list(). Первый вместо моделей возвращает словари, второй кортежи. Работать и с теми, и с другими не так удобно как с экземплярами моделей, дескать, платите ребята за скорость удобством. А я вот не хочу, и благодаря именнованым кортежам из стандартного модуля collections, не буду.
Дело за малым...

Что будет в django 1.3

Время на прочтение4 мин
Количество просмотров1.4K
Релиз django 1.3 совсем скоро. Думаю, многие уже RC в продакшне используют. Но все равно, пробегусь еще раз по тому, что нас ждет, стараясь не скатиться в перевод release notes.
Читать дальше →

Вклад авторов