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

Собрали в одном месте самые важные ссылки
читайте нас в Telegram

     03.01.2020       Выпуск 315 (30.12.2019 - 05.01.2020)       Статьи
     02.01.2020       Выпуск 315 (30.12.2019 - 05.01.2020)       Релизы
     27.12.2019       Выпуск 314 (23.12.2019 - 29.12.2019)       Статьи

Отправляем письма с помощью asyncio и aiohttp из Django приложения

Я занимаюсь разработкой и поддержкой сервиса уведомлений. Сервис написан на Python3 и Django. Помимо транзакционных писем, пушей и сообщений, сервис также берёт на себя задачи по массовым рассылкам коммерческих предложений (не спам! trust me, отписки у нас работают лучше подписок) пользователям, давшим на это согласие. Со временем база активных получателей разрослась до более миллиона адресов, к чему почтовый сервис не был готов. Я хочу рассказать о том, как новые возможности Python позволили ускорить массовые рассылки и сэкономить ресурсы и с какими проблемами нам пришлось столкнуться при работе с ними.

     26.12.2019       Выпуск 314 (23.12.2019 - 29.12.2019)       Видео
     19.12.2019       Выпуск 313 (16.12.2019 - 22.12.2019)       Статьи

Нас Django вкус волнует и манит

Прошло уже несколько недель, как официально вышла 3 версия Django. Я работал с этой версией ещё до публикации официального релиза и, к сожалению, заметил, что развитие Django сильно замедлилось. Версия 1.3 от 1.7 отличается в разы, а вот 3 версия содержит косметические изменения ветки 2 и не более.

     18.12.2019       Выпуск 313 (16.12.2019 - 22.12.2019)       Вопросы и обсуждения
     18.12.2019       Выпуск 313 (16.12.2019 - 22.12.2019)       Релизы
     11.12.2019       Выпуск 312 (09.12.2019 - 15.12.2019)       Вопросы и обсуждения
     05.12.2019       Выпуск 311 (02.12.2019 - 08.12.2019)       Статьи

React-admin и django rest framework

Наткнувшись недавно на статью о react-admin, я решил попробовать что это за зверь. Было интересно прикрутить это к джанге, благо там есть dataprovider для rest framework.

Но сначала нужно представить админку в виде api. В принципе, это легко делается с помощью viewset`ов, которых можно нагенерить автоматически пройдясь по моделям из админки.

     02.12.2019       Выпуск 311 (02.12.2019 - 08.12.2019)       Новости
     02.12.2019       Выпуск 311 (02.12.2019 - 08.12.2019)       Релизы
     29.11.2019       Выпуск 310 (25.11.2019 - 01.12.2019)       Статьи

Пуленепробиваемые модели Django

Перевод статьи: Haki Benita – Bullet Proofing Django Models

Недавно мы добавили банковские реквизиты в один из наших продуктов. Во время разработки мы столкнулись с некоторыми проблемами, и я подумал, что это может быть хорошей возможностью для изучения некоторых шаблонов, которые мы используем в наших моделях Django.

     27.11.2019       Выпуск 310 (25.11.2019 - 01.12.2019)       Вопросы и обсуждения
     22.11.2019       Выпуск 309 (18.11.2019 - 24.11.2019)       Статьи

Django. Создание динамических настроек сайта с помощью SingletonModel

Допустим, вы создаёте сайт с CMS на основе Django, у которого должны быть какие-то динамические настройки сайта, которые будут доступны пользователю. Например, название сайта, какая-то специализированная информация, при этом вы учитываете возможность мультиязычности. То что тогда можно использовать для этого? Мне пришла мысль использовать базу данных.

Для реализации этого требуется следующее:

  1. Создание модели данных, которая всегда будет содержать только один объект, то есть только одну запись. То есть это будет Singleton Model.
  2. Запретить удалять данную запись и создавать новые в панели администрирования Django
  3. Возможность использования иноформации из этой модели прямо в шаблоне, без загрузки настроек сайта в view функции.

Давайте разберёмся по порядку, как это реализовать.

 

     22.11.2019       Выпуск 309 (18.11.2019 - 24.11.2019)       Статьи

Как добавить пользовательские кнопки в Django Admin

В этой статье “шпаргалке” рассмотрено добавление пользовательских кнопок в интерфейс Django Admin. В первой части рассказано как добавить одно кнопку на страницу списка выбранной модели – list view. Например кнопку импорта чего либо. Во второй части рассказано как добавить пользовательские кнопки действий (actions) для каждой выбранной записи отдельно с дополнительными формами.

     21.11.2019       Выпуск 309 (18.11.2019 - 24.11.2019)       Статьи
     21.11.2019       Выпуск 309 (18.11.2019 - 24.11.2019)       Статьи
     18.11.2019       Выпуск 309 (18.11.2019 - 24.11.2019)       Релизы