Привет.
В прошлой своей статье я описал технологию создания кастомного поля для ввода тегов в Django. Сейчас я бы хотел поделиться готовым и более-менее универсальным решением, реализующим поле множественного выбора с автодополнением по AJAX. Отличие этого поля от описанного в предыдущей статье в том, что оно позволяет только выбирать элементы из справочника, но не создавать новые. За front-end часть будет отвечать замечательный jQuery-плагин Select2. Решение будет оформлено в виде отдельного приложения Django.
Читать полностью »
Метка «Django» - 6
Поле множественного выбора с автодополнением в Django
2013-04-25 в 7:29, admin, рубрики: django, python, select2, метки: Django, select2Сервер отчетов на django
2013-04-22 в 21:29, admin, рубрики: django, python, reports, метки: Django, reportsДоброго времени суток.
Так случилось, что моя работа связана с написанием отчетов.
Этому я посвятил около 8 лет. Отчеты — это глаза бизнес-процесса и информация,
необходимая для принятия оперативных решений.
Вначале наш отдел делал отчеты,
— Принимая задачи по outlook
— Составляя sql-запрос
— Отправляя результаты заказчику в xls
— В лучшем случае, сохраняя sql-код куда-то в папку (а иногда и не сохраняя)
Но это было скучно и неинтересно. Так появилось простейшее приложение на PHP,
в котором каждый отчет был представлен в виде php-файла с одним классом, имеющим единственный (помимо конструктора) метод show()
В таком виде, система прожила 5,5 лет, за которые мной и еще одним человеком было написано более 500 различных отчетов.
В процессе появился опыт и стало понятно, что многое (если не все) сделано не так, да и PHP уже не устраивал.
Сервер отчетов был переписан на django, где была «админка» и код приложения уже не правился.
В процессе работы снова накопилось несколько мыслей,
в итоге сервер был снова переписан.
Я решил представить сообществу текущую версию системы, возможно, она кому-то облегчит жизнь,
сняв рутину отчетности и переложит ее на машину, которая готова сотни раз формировать отчеты
тысячи людям по сотни разных входных параметров.
Это рабочий инструмент, который вы можете (если захотите) использовать в работе,
который нам использовать просто нравится.
Развёртывание django приложения на OpenShift хостинге от Red Hat
2013-04-18 в 20:47, admin, рубрики: cloud, django, openshift, python, Веб-разработка, Программирование, метки: cloud, Django, OpenShift, python Преимущества облачного хостинга в наше время объяснять не приходиться, а Red Hat предлагает нам ещё и опробовать все вкусности бесплатно (естественно с некоторыми ограничениями).
Вы не платите за хостинг и получаете?
- 1 Gb дискового пространства
- возможность создать 3 приложения
- поддержку php 5.3, Ruby 1.9, Node.js 0.6, Perl 5.10, python 2.6 (3.3), Zend Server 5.6 и это ещё не полный список.
Ну а если необходимого языка не нашлось можно создать Do-It-Yourself приложение и настроить его как душе угодно.
Мы же рассмотрим развёртывание Django приложения.Читать полностью »
Собственное поле формы в Django
2013-04-15 в 19:12, admin, рубрики: django, python, Песочница, метки: Django
Привет!
Я очень большой фанат фреймворка Django и все свои проекты пишу исключительно на нем. Сегодня я расскажу о том, как расширить стандартную библиотеку полей формы собственным оригинальным решением. Задача статьи не в том чтобы предложить готовое решение, а в том, чтобы осветить технологию создания кастомных полей.
Небольшое отступление. Однажды я корпел над созданием базы знаний для компании, в которой в то время работал. База представляла собой набор статей, помеченных тегами. К элементу ввода тегов предъявлялись следующие требования:
- Множественный ввод
- Автодополнение вводимого тега
- Теги могут содержать пробелы (состоять из нескольких слов)
- Возможность создать новый тег, а не выбрать из списка
После недолгих поисков, я нашел jQuery-плагин Tag-It!, который полностью удовлетворял требованиям к виджету. Осталось только прикрутить это поле к Django.
Читать полностью »
AppFog и Django. С чего начать?
2013-04-14 в 8:56, admin, рубрики: django, python, метки: Django, python Доброго времени суток, уважаемыее! Недавно я заинтересовался Python и, в частности, веб-фреймворком Django. После ознакомления с основными возможностями захотелось найти бесплатный хостинг с поддержкой Django. Каюсь, в тот момент напрочь забыл про GAE, но, почитав вчера про оный, понял, что выбор получился ничуть не хуже. Итак, встречайте, AppFog! (осторожно, под катом картинки!)
Читать полностью »
Заметки для построения эффективных Django-ORM запросов в нагруженных проектах
2013-04-06 в 16:46, admin, рубрики: django, python, метки: DjangoНаписано, т.к. возник очередной холивар в комментариях на тему SQL vs ORM в High-Load Project (HL)
Преамбула
В заметке Вы сможете найти, местами, банальные вещи. Большая часть из них доступна в документации, но человек современный часто любит хватать все поверхностно. Да и у многих просто не было возможности опробовать себя в HL проектах.
Читая статью, помните:
- Никогда нельзя реализовать HL-проект на основе только одной манипуляции с ORM
- Никогда не складывайте сложные вещи на плечи БД. Она нужна Вам чтобы хранить инфу, а не считать факториалы!
- Если вы не можете реализовать интересующую Вас идею простыми средствами ORM — не используйте ORM для прямого решения задачи. И тем более не лезте в более низкий уровень, костыли сломаете. Найдите более элегантное решение.
- Извините за издевательски-юмористический тон статьи. По другому скучно :)
- Вся информация взята по мотивам Django версии 1.3.4
- Будте проще!
И-и-и да, в статье будут показаны ошибки понимания ORM, с которыми я столкнулся за три с лишним года работы с Django.
Читать полностью »
Капча с помощью PIL или практический велосипед
2013-04-02 в 8:31, admin, рубрики: django, PIL, python, метки: Django, PIL, python
Приветствую. Возникла ситуация по написанию капчи. Хотел с нуля разобраться в этой теме, так сказать, почувствовать на собственной шкуре, как решаются подобные вопросы. Программисты со стажем, думаю, закидают шапками, но, буду надеется, кому-нить подобный вариант покажется полезен, хотя бы толика из того, что тут опишу.
Читать полностью »
Django ORM, gevent и грабли в зелени
2013-03-29 в 12:28, admin, рубрики: django, gevent, postgresql, python, Песочница, метки: Django, gevent, postgresql, pythonОчень многие выбирают Django за его простоту. Код на Django прост и лаконичен, мы меньше думаем о костылях и больше о бизнес-логике.
Gevent тоже выбирают из-за того, что он простой, очень шустрый и не несёт за собой callback hell.
В голове возникает великолепная идея совместить две простые и удобные вещи вместе. Мы патчим Django и радуемся простоте, лаконичности и производительности, делаем множество запросов на другие сайты, создаём подпроцессы, в общем используем наш новый асинхронный Django по максимуму.
Но совместив их, мы незаметно для себя поставили несколько граблей на нашем пути.
Читать полностью »
Фреймворк Django получит миграции схемы БД
2013-03-22 в 17:21, admin, рубрики: django, Kickstarter, orm, python, web-разработка, базы данных, Блог компании «NetAngels», Веб-разработка, миграция бд, метки: Django, Kickstarter, orm, python, web-разработка, базы данных, миграция бд
В официальном блоге Django появилась информация о том, что планируется расширить функционал встроенной ORM миграциями — важным функционалом, который присутствует во многих современных ОРМ-ах, что называется «из коробки», например в рельсовом ActiveRecord или пхпшной Doctrine. Исторически сложилось, что этот функционал отсутствует в Django ORM. Читать полностью »
Новый дизайн Python.org
2013-03-19 в 23:03, admin, рубрики: beta testing, django, python, python3, Дизайн в IT, редизайн, метки: beta testing, Django, python, python3, редизайн На проходящем в Санта Кларе(США) PyCon 2013 была представлена бета версия нового сайта Python.org — preview.python.org.
Новая адаптивная версия сайта выглядит приятней и современней, навигация по сайту стала более удобной и понятной.
Последний раз дизайн сайта был обновлен в 2006 году. Хотя если смотреть глубже, структура сайта не менялась с конца 90-х.
Новый сайт сделан на платформе Django 1.5 (Python 3.3)