Архивы метки «python»
Настройка админской панели в django нет откликов
Интересная заметка на habrahabr про то как минимальными усилиями сделать из обычной админской панели django красивый и удобный интерфейс.
Do it satchmo way нет откликов
Недавно потребовалось быстро развернуть более-менее универсальный магазин для нашего нового проекта торговли велотоварами. PHP-системы мне как-то не нравились и из симпатии к python начал было писать проект на django, но вскоре понял, что скорее всего получается велосипед, и начал искать что-то готовое. Оно пришло в виде Satchmo, весьма универсального и накручиваемого решения для электронной торговли. Что понравилось – немало настроек, в которых поначалу можно запутаться. Есть тонкости в адаптации под себя, но они описаны в документации (один отсутствующий момент – это как обновлять sitemaps, пришлось додумывать и доделывать самома). Но главное, магазин развернулся из коробки и через пару часов в нём уже можно было добавлять товары. А вот допиливания мелочей происходят уже по ходу, и зачастую незаметно для посетителей
Антивелосипед нет откликов
Python опять обрадовал меня наличием готовых модулей для всего и вся. На этот раз повезло быстро разобраться с чтением конфигурации из XML файла – для этого идеально подошёл модуль xmlobjects и простая конструкция вида:
import xmlobjects import psycopg2 xml = """""" conf = xmlobjects.fromstring(xml) conn = psycopg2.connect('dbname=%s user=%s password=%s' % ( conf.db.dbname, conf.db.user, conf.db.password)) user password dbname
Полезные дополнения к datetime нет откликов
Есть такое удобное дополнение к модулю datetime в python, как dateutil. Из часто встречающихся нужд позволяет упростить:
- Разбор строки в объект datetime;
- Работу с временными зонами (включая их справочник и использование информации системы);
- Разнообразные вычисления дат исходя из правил, вроде «первый понедельник марта».
Elisa нет откликов
В который раз это имя оказывается связанным с искусством, причём с давних пор. И современный пример прекрасно дополняет вклад классиков в поддержании его на слуху. Обнаружился он совершенно случайно, когда озадачился тем, что пора превращать свой домашний сервер во что-то более увлекательное, чем просто хранилище файлов и веб-проектов. И оказалось, что есть очень симпатичный проект медиа–центра, с удобным интерфейсом и возможностями, отлично вписывающимися в моё представление того, что должно получиться в итоге. И с версиями как под Linux так и под Windows! А самое интересное – посмотрите, на чём оно написано
Мощь python и лень нет откликов
Вот, что и требовалось доказать – стоило перестать лениться и откладывать «на потом», как за вечер бот из предыдущего поста научился понимать Atom (в необходимой мере) и постить в Blogger (благодаря чему обновляется ещё одно зеркало зеркало моего блога). А всё благодаря более-менее продуманной архитектуре, да удобству python и Twisted в качестве средства разработки. И зачем люди ещё пишут на PHP сложные системы…
Кстати, у Blogger’а выяснилась пара забавных моментов. Первый – это то, он строго следует спецификациям Atom при создании и редактировании сообщений. Но при этом, если отправлять ему содержимое поста с типом xhtml, завернутое в <div xmlns="http://www.w3.org/1999/xhtml">...</div>, то назад он возвращает содержимое завёрнутое как html, но при этом сохраняет этот самый div. Логика загадочна для меня.
Второй момент ещё более непонятный: по ходу тестирования я делал пачки постингов в блог. В какой-то момент получилось так, что пост проходит, возвращается назад с присвоенным id и т.п., а в блоге не появляется. Никаких намёков на то, почему так, нет. Буду пробовать дальше
Дополнение: всё оказалось очень просто. Из-за кучи постингов во время тестов blogger включил для моего аккаунта требование вводить captcha перед каждым постом. По сути можно было написать в блог только через веб-форму. Налицо явная недоработка API, так как ошибку внятную можно было и вернуть.