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

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

     03.06.2023       Выпуск 493 (29.05.2023 - 04.06.2023)       Статьи

Автоматизация деплоя Django-приложения в маленькой команде: пошаговый гайд

Развёртывание ПО, или деплой (deploy) — этап в разработке, в Devops в целом, это действия, которые делают ПО готовым к использованию. Если вы умеете в грамотный деплой, масштабирование и управление конвейерами (CI/CD), то ваш софт будет конкурентоспособным.

     01.06.2023       Выпуск 493 (29.05.2023 - 04.06.2023)       Статьи

Создаем блог на Django с опросами и тестами. Краткая инструкция. Часть 2

В предыдущей части мы частично разобрали шаблон для нашего блога, выбрали виртуальную машину и запустили на ней нативный веб-сервер Django. Однако он предназначен только для тестирования и запуска приложений во время разработки. Для обработки запросов в продакшене нужно настроить Nginx и WSGI Gunicorn. В этой статье показываем, как это сделать.

     17.05.2023       Выпуск 491 (15.05.2023 - 21.05.2023)       Статьи

Создаем блог на Django с опросами и тестами. Краткая инструкция. Часть 1

Самый действенный способ изучить фреймворк — написать пет-проект. Например, свою социальную платформу на Django. Во время реализации можно попрактиковаться в работе с формами, представлениями, сигналами и SMTP. В Proglib собрали небольшой шаблон, на базе которого можно создать свой блог на Django, а после — задеплоить на виртуальный сервер. Материал будет полезен новичкам, которые знакомы с базовыми концепциями фреймворка и хотят закрепить знания.

     16.05.2023       Выпуск 491 (15.05.2023 - 21.05.2023)       Статьи

Как написать расширение для Python Markdown

Пример простого расширения для Python-Markdown применительно для сайта на Django

     09.05.2023       Выпуск 490 (08.05.2023 - 14.05.2023)       Статьи

Автоматическая документация API Django Rest Framework с помощью DRF Spectacular

Целью этой статьи является демонстрация возможностей drf-spectacular для документирования API и основного набора техник, которые покроют большую часть сценариев использования. Мы настроим генерацию документации и рассмотрим все основные способы гибкой настройки отображения.

     04.05.2023       Выпуск 489 (01.05.2023 - 07.05.2023)       Релизы

django-taggit - 4.0.0

Приложение для поддержки тегов в Django. Приложение будет крайне полезно на сайте с новостями, которые необходимо помечать тегами, так же можно легко реализовать сортировку по тегам.. Скачать можно по ссылке: https://pypi.python.org/pypi/django-taggit/

     25.04.2023       Выпуск 488 (24.04.2023 - 30.04.2023)       Статьи

Python Дайджест: как ускорить Django проект до (почти) максимума

Завершение цикла статей про техническое оживление Python Дайджест. В первых трех частях рассказано как был совершен переход с Python 3.4 на Python 3.11 и Django 4, отформатирована вся кодовая база с pre-commit, настроена автоматизация задач на основе Github Actions. В заключительной части расскажу как получить "быстрый" сайт.

     24.04.2023       Выпуск 488 (24.04.2023 - 30.04.2023)       Статьи

Что произошло в мире Python за последний месяц

В апреле поговорили об исследовании экосистемы Django от JetBrains, LTS-релизе Django 4.2, релизе Pandas 2.0 и свежих PEP. Под катом — текстовая выжимка из обсуждения.

     18.04.2023       Выпуск 487 (17.04.2023 - 23.04.2023)       Статьи

403, 404 или 405. Разбираемся со статусами во ViewSet’ах DRF

Идея делать нормальный REST на Django – утопия, но некоторые моменты настолько логичные и нет одновременно, что об этом хочется писать. Ниже история про то, как мы сделали ViewSet от GenericViewSet и пары миксинов в DRF, покрыли это все тестами и получили местами странные, но абсолютно обоснованные коды ответов.

Текст может быть полезен новичкам (или чуть более прошаренным) в Django, дабы уложить в голове формирование url’ов и порядок вызова методов permission-классов. Ну а бывалые скажут, что все это баловство и надо было использовать GenericApiView.

     12.04.2023       Выпуск 486 (10.04.2023 - 16.04.2023)       Статьи

Релиз Django LTS 4.2: обзор изменений и необходимости обновления

В апреле 2023 года вышла новая LTS-версия Django Web Framework, одного из самых популярных фреймворков для веб-разработки на Python.«Вышла новая версия! Почему вы до сих пор не перешли на неё?» — такой вопрос часто возникает у студентов, изучающих этот фреймворк на курсах программирования. Аналогичный вопрос можно услышать и от начинающего специалиста, который недавно приступил к выполнению своих обязанностей в качестве бэкенд-разработчика.А стоит ли сейчас вообще начинать новый проект на Django или изучать этот фреймворк? В этой статье я, Евгений Бартенев, техлид и автор курса «Python-разработчик», помогу разобраться с этими и другими вопросами. Мы поговорим о разных типах релизов Django, посмотрим на главные изменения в новом и затронем основные аспекты, которые следует учитывать при обновлении версии Django в проекте.

     10.04.2023       Выпуск 486 (10.04.2023 - 16.04.2023)       Статьи

Интеграция и кастомизация OpenAPI в Django/Django Rest Framework

Рассмотрим способы интеграции OpenAPI схемы в экосистему Django/DRF с помощью библиотеки drf-spectacular, а также некоторые проблемы, возникающие при кастомизации API и, соответственно, их решения.

     04.04.2023       Выпуск 485 (03.04.2023 - 09.04.2023)       Видео

Кто такой syslog, зачем читать RFC-* и причём тут Django

Как добавить в существующую систему логирования Django поддержку syslog. Форматы, как их готовить и как документировать этот хаос. И кстати, зачем?

     31.03.2023       Выпуск 484 (27.03.2023 - 02.04.2023)       Статьи

Django. Полнотекстовый поиск на сайте для нескольких моделей с поддержкой мультиязычности

Наконец-то мне удалось сделать достаточно быстрый полнотекстовый поиск по нескольким моделям с учётом оптимизации запросов на сайте, который бы меня устраивал и отвечал моим требованиям к качеству проекта.

Если вы сейчас воспользуетесь поиском по сайту, то обнаружите, что поиск сработает достаточно быстро, а также выдаст несколько групп поиска: Статьи, Комментари, Темы форума, Ответы на форуме, Тесты.
Из всех групп поиска будут выбраны по три результата, а также будет у каждой группы есть счётчик общего количества найденных резульлатов и предложено посмотреть остальные результаты в отдельных вкладках.

     27.03.2023       Выпуск 484 (27.03.2023 - 02.04.2023)       Статьи

Декоратор cached_property

В этой статье хочется рассмотреть декоратор cached_property. Почему он есть и в стандартной библиотеке и в Django. Чем они отличаются и когда какой лучше использовать

     21.03.2023       Выпуск 483 (20.03.2023 - 26.03.2023)       Статьи

Django. Как написать блочный шаблонный тег tabbar наподобие тега blocktranslate

Туториал по написанию более продвинутых блочных шаблонных тегов в Django. Которые можно использовать помимо обычных inclusion_tag

     19.03.2023       Выпуск 482 (13.03.2023 - 19.03.2023)       Статьи

Django DRF Sign-in with Apple

Пришла пора внедрить систему аутентификации от Apple в проект на Django DRF, ведь система входа от Google была реализована давно и по идее проблем не должно было возникнуть, но как оказалось, у Apple есть свои определённые интересные и не очень особенности, о которых я напишу ниже.

     19.03.2023       Выпуск 482 (13.03.2023 - 19.03.2023)       Статьи

Django REST. Реализация функционала добавления в «избранное» с возможностью расширения типов добавляемого контента

Допустим у нас есть зарегистрированные пользователи и какая-то модель, например "Компании", которую пользователь может добавлять в избранное. Обычно такая задача решается путем создания третьей таблицы Favorite, являющейся связующим звеном, для реализации ManyToManyField связи между пользователем и компанией

     19.03.2023       Выпуск 482 (13.03.2023 - 19.03.2023)       Статьи

Django. Добавление счётчика уникальных просмотров

Как сделать простой счётчик уникальных просмотров на основе ip адреса для не авторизованных пользователей и записи в таблицы пользователей для авторизованных пользователей

     18.03.2023       Выпуск 482 (13.03.2023 - 19.03.2023)       Статьи

Django. Ускорение сайта с помощью кэширования шаблонов и их частей

Описание двух способов ускорения генерирования страниц сайта как с помощью кэширования частей шаблонов сайта, так и использования кэширующего загрузчика шаблонов на сайте.

     16.03.2023       Выпуск 482 (13.03.2023 - 19.03.2023)       Статьи

Python Дайджест: как актуализировать всю кодовую базу с помощью pre-commit

Продолжаю рассказывать, как open source проект Python Дайджест спустя 5 лет без обновлений удалось актуализировать по всему стэку технологий. В первой части рассказал, как удалось outdated проект с Python 3.4 обновить до Python 3.11 и Django 4.1. В этой части расскажу, как удалось максимально дешево привести кодовую базу в актуальное состояние.