Собрали в одном месте самые важные ссылки
консультируем про IT, Python
Пример простого расширения для Python-Markdown применительно для сайта на Django
Целью этой статьи является демонстрация возможностей drf-spectacular для документирования API и основного набора техник, которые покроют большую часть сценариев использования. Мы настроим генерацию документации и рассмотрим все основные способы гибкой настройки отображения.
Приложение для поддержки тегов в Django. Приложение будет крайне полезно на сайте с новостями, которые необходимо помечать тегами, так же можно легко реализовать сортировку по тегам.. Скачать можно по ссылке: https://pypi.python.org/pypi/django-taggit/
Завершение цикла статей про техническое оживление Python Дайджест. В первых трех частях рассказано как был совершен переход с Python 3.4 на Python 3.11 и Django 4, отформатирована вся кодовая база с pre-commit, настроена автоматизация задач на основе Github Actions. В заключительной части расскажу как получить "быстрый" сайт.
В апреле поговорили об исследовании экосистемы Django от JetBrains, LTS-релизе Django 4.2, релизе Pandas 2.0 и свежих PEP. Под катом — текстовая выжимка из обсуждения.
Идея делать нормальный REST на Django – утопия, но некоторые моменты настолько логичные и нет одновременно, что об этом хочется писать. Ниже история про то, как мы сделали ViewSet от GenericViewSet и пары миксинов в DRF, покрыли это все тестами и получили местами странные, но абсолютно обоснованные коды ответов.
Текст может быть полезен новичкам (или чуть более прошаренным) в Django, дабы уложить в голове формирование url’ов и порядок вызова методов permission-классов. Ну а бывалые скажут, что все это баловство и надо было использовать GenericApiView.
В апреле 2023 года вышла новая LTS-версия Django Web Framework, одного из самых популярных фреймворков для веб-разработки на Python.«Вышла новая версия! Почему вы до сих пор не перешли на неё?» — такой вопрос часто возникает у студентов, изучающих этот фреймворк на курсах программирования. Аналогичный вопрос можно услышать и от начинающего специалиста, который недавно приступил к выполнению своих обязанностей в качестве бэкенд-разработчика.А стоит ли сейчас вообще начинать новый проект на Django или изучать этот фреймворк? В этой статье я, Евгений Бартенев, техлид и автор курса «Python-разработчик», помогу разобраться с этими и другими вопросами. Мы поговорим о разных типах релизов Django, посмотрим на главные изменения в новом и затронем основные аспекты, которые следует учитывать при обновлении версии Django в проекте.
Рассмотрим способы интеграции OpenAPI схемы в экосистему Django/DRF с помощью библиотеки drf-spectacular, а также некоторые проблемы, возникающие при кастомизации API и, соответственно, их решения.
Как добавить в существующую систему логирования Django поддержку syslog. Форматы, как их готовить и как документировать этот хаос. И кстати, зачем?
Наконец-то мне удалось сделать достаточно быстрый полнотекстовый поиск по нескольким моделям с учётом оптимизации запросов на сайте, который бы меня устраивал и отвечал моим требованиям к качеству проекта.
Если вы сейчас воспользуетесь поиском по сайту, то обнаружите, что поиск сработает достаточно быстро, а также выдаст несколько групп поиска: Статьи, Комментари, Темы форума, Ответы на форуме, Тесты.
Из всех групп поиска будут выбраны по три результата, а также будет у каждой группы есть счётчик общего количества найденных резульлатов и предложено посмотреть остальные результаты в отдельных вкладках.
В этой статье хочется рассмотреть декоратор cached_property. Почему он есть и в стандартной библиотеке и в Django. Чем они отличаются и когда какой лучше использовать
Туториал по написанию более продвинутых блочных шаблонных тегов в Django. Которые можно использовать помимо обычных inclusion_tag
Пришла пора внедрить систему аутентификации от Apple в проект на Django DRF, ведь система входа от Google была реализована давно и по идее проблем не должно было возникнуть, но как оказалось, у Apple есть свои определённые интересные и не очень особенности, о которых я напишу ниже.
Допустим у нас есть зарегистрированные пользователи и какая-то модель, например "Компании", которую пользователь может добавлять в избранное. Обычно такая задача решается путем создания третьей таблицы Favorite, являющейся связующим звеном, для реализации ManyToManyField связи между пользователем и компанией
Как сделать простой счётчик уникальных просмотров на основе ip адреса для не авторизованных пользователей и записи в таблицы пользователей для авторизованных пользователей
Описание двух способов ускорения генерирования страниц сайта как с помощью кэширования частей шаблонов сайта, так и использования кэширующего загрузчика шаблонов на сайте.
Продолжаю рассказывать, как open source проект Python Дайджест спустя 5 лет без обновлений удалось актуализировать по всему стэку технологий. В первой части рассказал, как удалось outdated проект с Python 3.4 обновить до Python 3.11 и Django 4.1. В этой части расскажу, как удалось максимально дешево привести кодовую базу в актуальное состояние.
Недавно, я столкнулся с задачей, когда с проекта на Python нужно было стряхнуть пыли и заставить работать чуточку производительнее. В следствии чего монолит был распилен на микросервисы, а брокером между сервисами стали всем знакомый RabbitMQ и такой же старый как сам Python - Celery. Проект был перенесен с Django на FastAPI, который по-моему субъективному мнению является идеальным решением для любых бэкендов на Python. Проблема с которой я столкнулся во время подключения Celery описана в данном посте.
Для структурирования и мониторинга рабочих процессов используют канбан-доски — например, Jira и Trello. Они особенно полезны, когда задачи состоят из множества этапов — согласования, выполнения, ревью и продакшена.
Сегодня я расскажу новичкам про полезные и удобные функции PyCharm. Эта статья предназначена для тех, кто уже знаком с PyCharm и написал свои первые программы. Затронем основной функционал пайчарма, который может упростить и ускорить вашу работу и узнаем, как запускать сервер и тесты Django в один клик. А ещё, я поделюсь подборкой полезных плагинов и горячих клавиш.