Собрали в одном месте самые важные ссылки
читайте нас в Telegram
После нескольких лет поддержки фреймворка Django в PyCharm JetBrains и Django Software Foundation договорились о партнерстве и проведении 2-х недельной распродажи лицензий PyCharm c последующей передачей всех заработанных на распродаже денег в фонд Django на развитие различных проектов и активностей. В дополнение к распродаже, частью партнерства является внедрение нового стандарта аннотаций типов в Python (PEP 484 Type Hints) в будущие версии Django.
Являясь большим фанатом Python и фреймворка Django постоянно искал решение, как сделать разработку новых веб-проектов быстрее и удобнее. Все, кто знаком с разработкой на Django знают насколько не удобно строить на нем интуитивно понятную админ.панель. До мегапопулярного WordPress очень далеко, что делает порог вхождения в разработку сайтов выше, чем у PHP-фреймворков и CMS. После долгого поиска и тестирования различных решений я нашел для себя оптимальный вариант — Wagtail CMS. Wagtail — это полноценная CMS написанная на Django компанией Torchbox. За что им большое спасибо. Проект с открытым исходным кодом, поддерживается сообществом энтузиастов и выпускается под BSD лицензией. Читать дальше →
Описание нововведений в очередном выпуске приложения для Django, позволяющего отправлять с ваших сайтов разнообразные сообщения.
Вводная Сразу оговорюсь кому может быть интересна данная публикация. Это начинающие Django + JQuery программисты, интересующиеся векторной графикой в браузере с использованием canvas. Или просто люди, получившие подобное задание. Итак, находясь в постоянном сканировании рынка труда своего региона, наткнулся на весьма интересную вакансию web-разработчика в достаточно известной местной компании. В описании вакансии было сказано, что нужен python+django разработчик. После отправки резюме получил тестовое задание которое гласило:
В мини-докладе я рассмотрю простой велосипед (django-remdow), который позволяет в автоматическом режиме скачивать внешнюю статику. А также приведу простые инструменты для автоматической оптимизации вашего сайта.
В этой статье я расскажу как я решил проблему настройки окружения для разработки на Django под Windows.
Используется следующая связка:
1) Docker-machine
2) PyCharm
В Docker-machine:
1) PostgreSQL
2) Data container для PostgreSQL
3) Redis
4) И собственно само приложение на Django.
Небольшое описание работы с пакетом Channels для работы с WebSocket и в качестве очереди задач
Вторая часть статьи про написание Telegram бота на Python/Django. В ней мы поговорим о процессе деплоя в production.
Пишем Telegram бота через простейшее веб-приложение на Django.
Python дайджест - это крупный русскоязычный агрегатор Python новостей с кучей ссылок. Больше 10 тысяч ссылок уже собрали. Но в таком море контента тяжело ориентироваться и постоянно в голове вопрос "Как показать пользователю только релевантную информацию?".
В нашем Django-приложении необходимо было разработать отчет (расчет) бонусов.
Отчет должен иметь вложенную структуру с подведением итогов по пользователям, подразделениям и по всей компании.
Этот модуль родился в результате переосмысления (или недопонимания) мной вот этого пространного документа: Splitting up the settings file, размещённого на официальном сайте Django.
Хочу поделиться практическим опытом по установке готового проекта на Django на VPS от Reg.ru. Данное руководство рассчитано на новичков, оно содержит ряд не самых лучших решений, но с ним вы сможете запустить своей проект на Django в течение часа.
Инструкция не содержит настроек безопасности. Она была создана на базе англоязычных инструкций и боли, много боли (ссылки в конце статьи). Инструкция актуальна для настроек: centOS 7, Django 1.9.2 и Python 3.4.3
Доклад: JSON-RPC или когда REST неудобен
Докладчик: Александр Кацко
Описание:
Как только речь заходит про создание API, особенно для веб или мобильных приложений, то многие, не задумываясь, выбирают принцип REST. Но всегда ли это правильный выбор? В докладе рассмотрим случаи, для которых хорошо подходит JSON-RPC, посмотрим примеры реализации на Django.
Когда-то я писал о своей неприязни к Class Based Views (CBV) в Django. Их использование заметно усложняет код и увеличивает его объём, при этом CBV мешают применять некоторые достаточно распространённые шаблоны (скажем, когда две формы представлены в одном view). И судя по всему, я не единственный из разработчиков Django, придерживающийся такой точки зрения.
Но в этом посте я хочу рассказать об ином подходе, который я применил в одном из проектов. Этот подход можно охарактеризовать одной фразой: «Создавайте свой собственный базовый класс».
Однажды мне пришлось заняться разработкой Web-приложения для корпоративного использования на Python+Django. И самым первым вопросом, который пришлось решать — это прозрачная авторизация на сайте или Single Sign-On (SSO).
Хотя о вопросе реализации SSO для Django написано немало статей, однако для того, чтобы реализовать то, что мне было необходимо, пришлось затратить относительно много времени. Поэтому, чтобы избавить некоторых из вас от возможных долгих поисков информации и ее сборки в работающую схему, предлагаю вам свой мануал, как сделать прозрачную авторизацию в приложении Django с использованием учетных записей Active Directory.
Django - самый популярный web-фреймворк для Python. Этому доказательство - количество библиотек расширяющих возможности.
От этого множество авторов пишут статьи с названиями "Мой топ 10 django-модулей", мы не исключение и будем такие писать.
В ходе этого выступления мы создадим веб-приложение на Django, при помощи которого продемонстрируем всем желающим, как может быть реализован согласованный с принципами REST программный интерфейс к нему, а также узнаем для чего нужны подобные интерфейсы. Помимо принципов REST, будет затронута тема ограничения доступа к веб-ресурсам при помощи OAuth2 (с примерами использования приложения django-oauthost).
Сегодня я расскажу о не совсем простой концепции быстрого (до часа после нескольких тренировок) развёртывания проекта для работы команды, состоящей как минимум из отдельных фронтенд и бэкенд разработчиков.
Исходные данные у нас такие: начинается разработка проекта, в которой планируется «тонкий бэкенд». Т.е. бэк у нас состоит из закешированных страниц (рендерятся любым шаблонизатором), объёмных моделей с сопутствующей логикой (ORM) и REST API, выполняющего роль контроллера. Фактически, View в такой системе редуцировано и вынесено в JS, благо есть разные реакты, ангуляры и прочие вещи, которые позволяют фронтендщикам считать себя «белыми людьми».
Только что обнаружил интересный баг (баг с точки зрения человеческой логики, но не машины), и решил им поделиться с сообществом. Программирую на django уже довольно долго, но с таким поведением столкнулся впервые, так что, думаю, кому-нибудь да пригодится. Что ж, к делу!