Если вы создаете новый проект на Django , то я рекомендую использовать пользовательскую модель User, которая расширяется от подкласса AbstractBaseUser вместо встроенной django.contrib.auth.models.User.
Вы конечно , можете этого не делать и использовать другие стратегии , такие как использование прокси-модели , использование связи один-к-одному с пользовательской моделью и создание пользовательской модели с помощью расширения AbstractUser, но по моему личному мнению расширения от подкласса AbstractBaseUser является самым гибким способом, хоть и вначале требует определенных усилий для его реализации.
Если вы разрабатываете свои проекты на Django , то вы легко можете разработать API с помощью замечательной библиотеки Django REST framework . Но давайте посмотрим какие другие фреймворки на Python позволяют разрабатывать API. Иногда бывает полезно рассматривать альтернативы и другие технологии , которые специально заточены для данных задач. И при том эти фреймоворки учитывают плюсы и минусы разных технологий.
Одним из таких современных фреймворков , который разрабатывался для построения API является фреймворк FastAPI
Многие начинающие разработчики на Django при работе с Django ORM сталкиваются с проблемой известной как "N+1 запрос". Это неэффективное обращение к базе данных , когда для получения связанных данных для каждого объекта генерируется новый запрос. В предыдущем посте, мы рассмотрели как это проблема решается с помощью использования select_related. Но там мы рассматривали связь многое-к-одному.
А что если у нас связь много-к-многим? Как быть в такой ситуации ?
Читать далее
Django ORM - это прекрасный инструмент , который позволяет нам работать с базой данных и при этом не используя голые запросы. Из-за этого начинающие разработчики допускают ошибки.
Рассмотрим самый распрастраненный и классический случай.
Читать далее
Docker - это ПО для автоматизации развёртывания и управления приложениями в средах с поддержкой контейнеризации и бла-бла-бла. Короче , все заумно и ничего неясно. Какая еще контейнеризация и автоматизация управления.
И еще все эти контейнеры , images , volumes и все такое. Короче запутаться можно и погрязнуть в этой теории.
Поэтому мы в данной статье будем на практике исползовать docker и по ходу будем в ней разбираться.
Читать далее
В этой статье воспользуемся замечательной библиотекой vk_api,
которая позволяет очень легко взаимодействовать с сайтом Вконтакте. И напишем простой скрипт с ее использованием , который выводит список песен , которые есть в ваших аудиозаписях
Pandas - это Python библиотека для обработки и анализа данных. Эта библиотека построена поверх библотеки NumPy, которая написана на С и славится своим быстройдествием.
Реализуем Rest Api на стороне сервера
Это очень легко реализовать с помощью DRF.
У нас есть модель Post и для него мы реализуем сериализатор.
Давайте создадим просто мобильное приложение на IOS , которое позволит читать статьи нашего блога.
В ходе создания этого приложения мы изучим основы создания IOS приложения , используем для этого TableController
Amazon Web Services (AWS)- это облачная платформа, разработанная и поддерживаемая компанией Amazon c 2006 года.
Эта платформа предоставляет огромное количествео сервисов , которые вы можете использовать для решения самых различных задач.
В данной статье мы рассмотрим библиотеку Boto3 , которая предоставляет SDK для работы с AWS с использованием языка программирования Python.
В процессе разработки программ мы часто игнорируем логирование. И для отладки программ мы используем вывод средствами print. И это большая ошибка , так как логирование играет большую роль при разработке надежных программных систем. Так как устранение ошибок производится не только на этапе разработки , но и на этапе продакшена могут возникать неполадки , которые требуют оперативного реагирования и решения. При правильном введении логировани мы можем упростить обнаружение неполадок и оперативное их устранение
Читать далееЗачем нам нужно документировать API ?
Что за такие страшные слова Swagger и OpenApi ?
Каквя между ними разница?
Как легко подключить Swagger документацию вашим эндпоинтам , реализванные на DRF?
Все в этой статье
JWT состоит из трех основных частей:
заголовок (header),
нагрузка (payload)
подпись (signature)
Читать далее
Отправить html сообщение по почте средствами django очень просто
Читать далее