Разработчикам, не сидящим все время под windows, но иногда там появляющимся оная операционка частенько преподносит сюрпризы. Столкнувшись с одним из них спешу поделиться, ибо метод лечения крайне неочевиден. На понимание, что ни Django ни ваш код не виноваты может уйти не один час…
Читать полностью »
Метка «Django» - 12
Django, Staticfiles, Windows и UnicodeDecodeError
2012-05-19 в 10:31, admin, рубрики: django, python, windows, метки: Django, windowsМультиаплоад файлов, версия N
2012-05-18 в 16:26, admin, рубрики: django, multiupload, python, метки: Django, multiupload Еще с давних времен, когда интернет был молодым и медленным, самым распространенным браузером был не IE, а Mosaic, в интернет не ходили, а дозванивались… меня часто мучал вопрос — почему в файловых диалогах можно выбрать всего один файл? Почему если в форме есть три файловых поля, то в каждое из них надо тыкать? Неужели нельзя удобнее?
Шло время, появился javascript, CGI, но файлополя были все также эгоистичны. Потом появился флеш, html5, ситуация начала меняться, но… Файловое поле имеет ту-же самую суть — файл, а не файлы! Хотя есть множество обходных методов…
Читать полностью »
Все знают, что такое кэширование и зачем оно нужно. Посещаемость растет, нагрузка на базу данных увеличивается, и мы решаем отдавать данные из кэша. В идеальном мире, наверное, для этого будет достаточно добавить строчку USE_CACHE = True
в settings.py, но пока это время не пришло, понадобится немного больше телодвижений.
Когда мы собираемся использовать кэш в Django, нужно сделать выбор: взять готовое решение, которое сделает сделает все «за кулисами», либо реализовать свое. В отличие от многих других ситуаций, тут этот выбор не так очевиден, так как в существующих на сегодня готовых решениях довольно много ограничений и потенциальных неудобств.
Сначала мы быстро рассмотрим готовые решения, а потом разберемся, как же лучше реализовать кэширование самостоятельно.
Читать полностью »
Moscow Django Meetup #3
2012-05-12 в 15:09, admin, рубрики: django, meetup, python, метки: Django, meetup
Хотим поделиться впечатлениями от третьей московской встречи Django-девелоперов, она же Moscow Django Meetup. Благодаря организаторам из GreenfieldProject и Seven Quark в этот раз удалось подыскать для встречи отличное место: один из вместительных залов MOD Design. Очень уютное, близко к центру, а главное, всем хватило места и было удобно. Огромный проекционный экран, кликер для докладчика, вкусный кофе в перерыве, что ещё надо для хорошего митапа.
В программе были заявлены 5 докладов: 3 полноценных по 20 минут и два укороченных по 10, разделённые одним кофебрейком. Сколько пришло народу из почти сотни зарегистрированных сказать сложно, человек 50-60, вероятно, кто-то не успел
прийти в себя после праздников. На фото зал минут за 10-15 до начала, потом народ ещё подтянулся.
Читать полностью »
Добавляем поддержку Windows Live Writer (Meta Weblog API) в блог на Django
2012-04-30 в 22:08, admin, рубрики: django, python, windows, метки: Django, python
Пару лет назад посчастливилось мне иметь блог на WordPress. До наших дней блог, как и вся база постов к моему сожалению не дожила, но рассказать я хочу не о самом блоге, а о том с помощью чего вся информация публиковалась. В то время Microsoft не так давно запустила Windows 7, а вместе с ней и пакет приложений Windows Live. Вот и я решил взглянуть – чего в этом пакете вкусного? Больше всего мне приглянулось приложение Windows Live Writer – программа позволяющая набирать и форматировать тексты, и публиковать их в блог. Удобный интерфейс, множество инструментов для форматирования, возможность хранить черновики локально, и многое другое – я влюбился. Спустя некоторое время свой блог без Windows Live Writer я уже не представлял.
Читать полностью »
Рецепты от ПанГурмана
2012-04-24 в 10:21, admin, рубрики: ajax, django, тесты, метки: ajax, Django, тестыНедавно запустили сервис по бронированию ресторанов ПанГурман. Внутри это более-менее типичный django-сайт. Попробую рассказать, как там что устроено (с картинками). В статье не будет ничего супер-хитрого, но, надеюсь, кому-нибудь пара трюков или идей покажутся полезными и как-то упростят жизнь.
Нелегкий выбор Python или PHP. А может и то и другое?
2012-04-23 в 7:33, admin, рубрики: django, php, python, Программирование, метки: Django, PHP, pythonНесмотря на название, в данной статье не будет «холиварных» высказываний, обзоров достоинств или недостатков языков. По большей части данная статья носит философский, исключительно субъективный характер с небольшой примесью личного опыта.
Выбор на самом деле действительно нелегкий. Изначально все проекты мы разрабатывали на PHP. Но со временем накапливалось недовольство данным языком. По большому счету не устраивала скорость разработки и комфортность работы с ним. Даже элементарно на уровне синтаксиса языка, приходится набирать много лишнего. Эти $ перед переменными, -> для доступа к методу или члену класса, и множество мелочей, которые раздражали, а иногда и бесили.
Формально, даже трудно передать, чем данный язык не устраивал. На любое утверждение или пример, найдется более грамотный специалист и поклонник PHP, который возразит: что надо делать не так, а вот так и все нормально будет, или вообще что это не проблема, а наоборот достоинство. Просто скажу так — этот язык перестал нравиться исключительно подсознательно, вот неприятно на нем писать и все. Не приносит работа удовлетворение.
Читать полностью »
Оптимизация flatpages проекта на django под минимальные системные требования. Статья-шутка
2012-04-21 в 13:02, admin, рубрики: django, memcached, nginx, uwsgi, Веб-разработка, метки: Django, memcached, nginx, uwsgi
Под катом много букв, но не беспокойтесь — вы всех их знаете.
Читать полностью »
Введение в SELinux: модификация политики targeted для сторонних веб-приложений
2012-04-19 в 13:15, admin, рубрики: CentOS, django, Fedora, httpd, mod_wsgi, redhat, selinux, Блог компании Positive Technologies, Веб-разработка, информационная безопасность, метки: CentOS, Django, Fedora, httpd, mod_wsgi, redhat, selinux Привет, коллеги!
Многие из нас занимаются настройкой рабочих серверов для веб-проектов. Я не буду рассказывать о том, как настроить Apache или Nginx: вы знаете об этом больше меня. Но один важный аспект создания frontend-серверов остается неосвещенным: это настройки подсистем безопасности. «Отключите SELinux», — вот стандартная рекомендация большинства любительских руководств. Мне кажется, что это поспешное решение, ибо процесс настройки подсистем безопасности в режиме «мягкой» политики чаще всего весьма тривиален.
Сегодня я расскажу вам о некоторых методах настройки подсистемы безопасности SELinux, применяемой в семействе операционных систем Red Hat (CentOS). В качестве примера мы настроим связку для веб-сервера Apache + mod_wsgi + Django + ZEO на CentOS версии 5.8.
GeoIP и Django
2012-04-19 в 10:18, admin, рубрики: django, geoip, ipgeobase, метки: Django, geoip, ipgeobaseВебразработчики частенько сталкиваются с классической задачей определения местоположения пользователя по его IP-адресу. Существует множество различных решений, например на основе мировой базы Maxmind Geolite или российской IpgeoBase. Все они обладают достаточно низкуровневыми API, ну оно и понятно: на входе айпишник, на выходе страна, либо город и, если повезёт, ещё какая-нибудь полезная информация.
У всех сайтов с GeoIP, которые мы запускали, есть общая черта: они не только нуждаются в простой геолокации, необходимо также выводить различный контент на сайте в зависимости от месторасположения пользователя. Чтобы упростить для себя эту задчу мы написали небольшую батарейку django-geoip, вдохновившись приложением django-ipgeobase.
Читать полностью »