IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE

     13.01.2016       Выпуск 108 (11.01.2016 - 17.01.2016)       Интересные проекты, инструменты, библиотеки

django-classic-theme - классическая тема (из django 1.8-)

Модуль содержит набор css/js, которые возвращают старую админку для django 1.9+

     13.01.2016       Выпуск 108 (11.01.2016 - 17.01.2016)       Статьи

Мой подход к Class Based Views

Когда-то я писал о своей неприязни к Class Based Views (CBV) в Django. Их использование заметно усложняет код и увеличивает его объём, при этом CBV мешают применять некоторые достаточно распространённые шаблоны (скажем, когда две формы представлены в одном view). И судя по всему, я не единственный из разработчиков Django, придерживающийся такой точки зрения.

Но в этом посте я хочу рассказать об ином подходе, который я применил в одном из проектов. Этот подход можно охарактеризовать одной фразой: «Создавайте свой собственный базовый класс». 

     12.01.2016       Выпуск 108 (11.01.2016 - 17.01.2016)       Статьи

Django Single Sign-On и Microsoft Active Directory

Однажды мне пришлось заняться разработкой Web-приложения для корпоративного использования на Python+Django. И самым первым вопросом, который пришлось решать — это прозрачная авторизация на сайте или Single Sign-On (SSO).

Хотя о вопросе реализации SSO для Django написано немало статей, однако для того, чтобы реализовать то, что мне было необходимо, пришлось затратить относительно много времени. Поэтому, чтобы избавить некоторых из вас от возможных долгих поисков информации и ее сборки в работающую схему, предлагаю вам свой мануал, как сделать прозрачную авторизацию в приложении Django с использованием учетных записей Active Directory.

     11.01.2016       Выпуск 108 (11.01.2016 - 17.01.2016)       Интересные проекты, инструменты, библиотеки

django-eventtools - модуль для создания и отображения событий на сайте

Пакет добавляет модели события(Event) и времени появления(Occurrence) с помощью которых можно создавать повторяющиеся/одноразовые события, а затем отображать их на сайте.

     08.01.2016       Выпуск 107 (04.01.2016 - 10.01.2016)       Релизы

django-filter - 0.12.0

Django-приложение для гибкой фильтрации объектов модели (querysets). Изменения описаны по ссылке https://allmychanges.com/p/python/django-filter/#0.12.0. Скачать можно по ссылке: https://pypi.python.org/pypi/django-filter

     07.01.2016       Выпуск 107 (04.01.2016 - 10.01.2016)       Релизы

django-two-factor-auth - 1.3.0

Полноценная двухфакторная аутентификации для Django.. Изменения описаны по ссылке https://allmychanges.com/p/python/django-two-factor-auth/#1.3.0. Скачать можно по ссылке: https://pypi.python.org/pypi/django-two-factor-auth/

     03.01.2016       Выпуск 106 (28.12.2015 - 03.01.2016)       Колонка автора

Полезные библиотеки: где брать модули для django?

Django - самый популярный web-фреймворк для Python. Этому доказательство - количество библиотек расширяющих возможности.

От этого множество авторов пишут статьи с названиями "Мой топ 10 django-модулей", мы не исключение и будем такие писать.

     02.01.2016       Выпуск 106 (28.12.2015 - 03.01.2016)       Статьи

Разработка сайта на платформе Django-nonrel

В этой статье я хочу рассказать о разработке своего проекта — сайта egaxegax.appspot.com. Поскольку являюсь большим поклонником языка Python, свой сайт я решил создать на популярном фреймворке Django. Чтобы использовать его на бесплатном хостинге appspot.com, адаптировал код для использования NoSQL версии django и платформы Google AppEngine. 

     29.12.2015       Выпуск 106 (28.12.2015 - 03.01.2016)       Релизы

django-nose - 1.4.3

Django-nose – приложение упрощающее тестирование в django. Основными фишками является то, что: – позволяет запускать только твои тесты, и пропускать системные тесты в django – позволяет выполнять отдельные тесты в отдельных файлах и причем файл не обязан называться tests.py – позволяет создать визуальное покрытие тестами кода (создает html файлик, в котором отдельным цветом выделены участки кода покрытые тестами). Изменения описаны по ссылке https://allmychanges.com/p/python/django-nose/#1.4.3. Скачать можно по ссылке: https://pypi.python.org/pypi/django-nose

     18.12.2015       Выпуск 104 (14.12.2015 - 20.12.2015)       Статьи

Городской чат на Python, Django и Twilio IP Messaging

Статья описывает опыт создания чата привязанного к гео-позиции. 

     16.12.2015       Выпуск 104 (14.12.2015 - 20.12.2015)       Статьи

Django. Знакомство с ElasticSearch

Понадобилось на одном из своих проектов установить FTS сервис. Я достаточно долгое время пользовался SphinxSearch, но решил поинтересоваться у общественности (тут итут) какой сейчас инструмент более популярен и отвечает следующим требованиям:

     16.12.2015       Выпуск 104 (14.12.2015 - 20.12.2015)       Видео

Основы REST API и OAuth2

В ходе этого выступления мы создадим веб-приложение на Django, при помощи которого продемонстрируем всем желающим, как может быть реализован согласованный с принципами REST программный интерфейс к нему, а также узнаем для чего нужны подобные интерфейсы. Помимо принципов REST, будет затронута тема ограничения доступа к веб-ресурсам при помощи OAuth2 (с примерами использования приложения django-oauthost).

     15.12.2015       Выпуск 104 (14.12.2015 - 20.12.2015)       Релизы

django-extensions - 1.6.1

Набор пользовательских расширений для Django-проектов. Изменения описаны по ссылке https://allmychanges.com/p/python/django-extensions/#1.6.1. Скачать можно по ссылке: https://pypi.python.org/pypi/django-extensions

     13.12.2015       Выпуск 103 (07.12.2015 - 13.12.2015)       Статьи

Временные зоны в Pytz и Django

Проблемы с временными зонами возникают неожиданно. И вылезают наружу при использовании ПО. Статья описывает применение канонического модуля временных поясов Pytz в вашем ПО

     10.12.2015       Выпуск 103 (07.12.2015 - 13.12.2015)       Интересные проекты, инструменты, библиотеки

django-advanced-filters - приложение с фильтрами

Инструмент расширяет возможности стандартных фильтров в админке. Можно фильтровать по вложенным объектам, комбинировать условия

     10.12.2015       Выпуск 103 (07.12.2015 - 13.12.2015)       Статьи

Поднимаем сложный проект на Django с использованием Docker

Сегодня я расскажу о не совсем простой концепции быстрого (до часа после нескольких тренировок) развёртывания проекта для работы команды, состоящей как минимум из отдельных фронтенд и бэкенд разработчиков.

Исходные данные у нас такие: начинается разработка проекта, в которой планируется «тонкий бэкенд». Т.е. бэк у нас состоит из закешированных страниц (рендерятся любым шаблонизатором), объёмных моделей с сопутствующей логикой (ORM) и REST API, выполняющего роль контроллера. Фактически, View в такой системе редуцировано и вынесено в JS, благо есть разные реакты, ангуляры и прочие вещи, которые позволяют фронтендщикам считать себя «белыми людьми».