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

Собрали в одном месте самые важные ссылки
консультируем про IT, Python

     22.07.2021       Выпуск 396 (19.07.2021 - 25.07.2021)       Статьи

Шпаргалка по командам django-admin

В этой статье приведен полный список команд утилиты django-admin с кратким описанием.

     21.07.2021       Выпуск 396 (19.07.2021 - 25.07.2021)       Статьи

Не суйте свой Pydantic в мое Django

Было замечательное теплое австрийское утро, и ничего не предвещало … ничего, пока мой коллега не порекомендовал мне посмотреть запись недавно прошедшей Pyconf.

Там кто-то рассказывал, как при помощи желтого скотча, такой-то матери и усилий любимых разработчиков они наконец то допилили Django Rest Framework до состояния франкенштейна подходящего его компании. Презентация выглядела странно, может я и прошел бы мимо, но моменты упоминания докладчиком PYDANTIC вызвали у меня явные сомнения в нормальности происходящего.

Оставим получившегося фRESTенштейна для другой статьи, и поразмышляем только о прозвучавшей в докладе возможности использования PYDANTIC в экосистеме Django — DRF.

     19.07.2021       Выпуск 396 (19.07.2021 - 25.07.2021)       Статьи
     17.07.2021       Выпуск 395 (12.07.2021 - 18.07.2021)       Статьи

Как работают Django Class-based views

Для новичка, который осваивает Django, представления на основе классов больше похожи на магию чёрного ящика, по крайней мере, у меня при первом знакомстве сложилось именно такое впечатление. Обильные руководства зачастую показывают, какие атрибуты и методы следует определить в вашем классе, чтобы этот ящик работал на вас, но не дают понимания принципа работы.Я хочу залезть под капот фреймворка и строчка за строчкой разобрать, как же работают представления на основе классов. Надеюсь, что по прочтении, Class-based views уже не будут казаться такими пугающими и я подстегну вас к дальнейшему самостоятельному изучению исходников. Возможно, вы думали о фреймворке как о некой магии, которую невозможно понять, но на самом деле это обычный код, написанный опытными разработчиками.

     16.07.2021       Выпуск 395 (12.07.2021 - 18.07.2021)       Статьи

Django Rest Framework для начинающих: создаём API для записи и обновления данных (часть 1)

Продолжаем изучать Django Rest Framework с точки зрения новичка. Мы уже разобрали создание REST API для получения данных из БД, включая отдельную статью о работе сериалайзера.

В этой статье расскажу, как с помощью сериалайзера проверить поступившие данные для записи в БД. Валидация в DRF состоит из множества этапов с массой нюансов. Если при чтении покажется, что деталей очень много и картинка в голове начинает плыть, в конце статьи есть обобщающая таблица с кратким описанием последовательности всех проверок.

     15.07.2021       Выпуск 395 (12.07.2021 - 18.07.2021)       Статьи
     14.07.2021       Выпуск 395 (12.07.2021 - 18.07.2021)       Статьи
     05.07.2021       Выпуск 394 (05.07.2021 - 11.07.2021)       Статьи

Custom Permission Classes in Django REST Framework

This article looks at how to build custom permission classes in Django REST Framework (DRF).

     03.07.2021       Выпуск 393 (28.06.2021 - 04.07.2021)       Статьи
     30.06.2021       Выпуск 393 (28.06.2021 - 04.07.2021)       Статьи

How to use Python’s HTTPStatus with Django

A “magic number” is the anti-pattern of using a number directly rather than storing it in a descriptive variable name. In web code HTTP status codes are often used as magic numbers, perhaps because web developers memorize common codes such as 200 and 404. In Python, we can avoid such magic with descriptive references from the standard library’s http.HTTPStatus enum.

Let’s look at two ways to use HTTPStatus in our Django code.

     24.06.2021       Выпуск 392 (21.06.2021 - 27.06.2021)       Статьи
     17.06.2021       Выпуск 391 (14.06.2021 - 20.06.2021)       Статьи
     03.06.2021       Выпуск 389 (31.05.2021 - 06.06.2021)       Статьи

Пишем обёртку над SQLAlchemy Сore

Для асинхронного Python существует мало полноценных ORM, и им далеко до таких монстров-комбайнов, как DjangoOrm и SQLAlchemy.ORM. Бедность ORM-инструментария для асинхронного программирования заставила многих программистов отказаться от зачастую непонятной им работы с ORM и перейти к более прозрачному взаимодействию с БД. Решение в лоб — написание raw SQL, но в этом случае запросы не будут защищены от инъекций, а запросы, составляемые по бизнес логике с опциональными параметрами, превратятся в конкатенацию строк. Важно найти баланс между прозрачностью выполнения кода, скоростью его написания и читаемостью.

     02.06.2021       Выпуск 389 (31.05.2021 - 06.06.2021)       Статьи

Разрешения в Django Rest Framework

Перевод: Špela Giacomelli (aka GirlLovesToCode) — Permissions in Django Rest Framework В этой статье рассматриваются особенности использования разрешений has_permission

     02.06.2021       Выпуск 389 (31.05.2021 - 06.06.2021)       Статьи

Permissions in Django Rest Framework

This article looks at how permissions work in Django REST Framework.

     01.06.2021       Выпуск 389 (31.05.2021 - 06.06.2021)       Статьи

Конечные автоматы и django

При работе над django-проектом, есть ряд must-have сторонних библиотек, если не хочется бесконечно изобретать велосипед. Средстав отладки sql запросов(debug-toolbar, silk, --print-sql из django-extensions), что-нибудь для хранения древовидных структур, переодических/отложенных задач(кстати, cron-like интерфейс есть у uswgi. EAV всё ещё бывает нужен, хотя часто его можно заменить jsonfield. И одна из таких крайне полезных вещей, но почему-то реже обсуждаемая в сети - FSM. Не так часто почему-то сталкиваюсь с ними в чужом коде.

     31.05.2021       Выпуск 389 (31.05.2021 - 06.06.2021)       Статьи
     22.05.2021       Выпуск 387 (17.05.2021 - 23.05.2021)       Статьи