У вас есть блог на Django и вы хотите , чтобы информация о посте автоматически появлялась бы на вашем телеграм канале. Или у вас на сайте прием заявок или иных событий и вы хотите , чтобы информация об этих заявках и событиях мгновенно появлялась у вас на телеграм-канале.
Это легко реализовать с помощью стандартных средств python, с использованием телеграм бота , который будет посылать сообщения в телеграм-канал.
И в этой статье я пошагово расскажу как это сделать.
Читать далееЗачем нам нужно документировать API ?
Что за такие страшные слова Swagger и OpenApi ?
Каквя между ними разница?
Как легко подключить Swagger документацию к вашим эндпоинтам , реализованных с помощью Django REST Framework(DRF)?
Попробуем об этом разобраться в этой статье.
4 декабря 2023 года состоялся релиз Django 5.0
Django 5.0 поддерживает Python 3.10, 3.11, и 3.12. Поэтому настоятельно рекомендую обновляться на эти версии и идти ногу со временем.
В этой статье мы подробно на примерах рассмотрим новые возможности , которые были добавлены в этой версии.
Django Rest Framework (DRF) - Загрузка файлов
В этой статье рассмотрим как можно загружать файлы с помощью Django Rest Framework
Рассмотрим самый простой случай. У нас есть модель Post , у которого есть поле preview , куда нужно загружать изображения
Читать далее
Django-guardian. Добавляем управление разрешениями на уровне объектов
Читать далее
Django предоставляет из коробки систему аутентификации и авторизации(permission) пользователей. Эта система позволяет проверять учетные данные пользователей и определять права доступа для пользователей. Ввод логина и пароля - это аутентификация пользователей , а права доступа на редактирование записей , создание новых и удаление - это уже авторизация. Поэтому,с помощью permissions мы указываем какие действия могут выполнять пользователи на сайте , а к каким запрещен доступ.
При разработке веб-приложений большинство программистов часто избегают тестирования. Я основном говорю о начинающих программистах. Да и многие , кто уже довольно долго в этой профессии и которые разрабатывают коммерческие приложения довольно часто избегают тестирования , а многие незнакомы с ней.
В этой статье мы будем рассматривать тестирования для веб-приложений , которые создаются с использованием фреймворка Django.
Если вы создаете новый проект на Django , то я рекомендую использовать пользовательскую модель User, которая расширяется от подкласса AbstractBaseUser вместо встроенной django.contrib.auth.models.User.
Вы конечно , можете этого не делать и использовать другие стратегии , такие как использование прокси-модели , использование связи один-к-одному с пользовательской моделью и создание пользовательской модели с помощью расширения AbstractUser, но по моему личному мнению расширения от подкласса AbstractBaseUser является самым гибким способом, хоть и вначале требует определенных усилий для его реализации.
Многие начинающие разработчики на Django при работе с Django ORM сталкиваются с проблемой известной как "N+1 запрос". Это неэффективное обращение к базе данных , когда для получения связанных данных для каждого объекта генерируется новый запрос. В предыдущем посте, мы рассмотрели как это проблема решается с помощью использования select_related. Но там мы рассматривали связь многое-к-одному.
А что если у нас связь много-к-многим? Как быть в такой ситуации ?
Читать далее
JWT состоит из трех основных частей:
заголовок (header),
нагрузка (payload)
подпись (signature)
Читать далее
Отправить html сообщение по почте средствами django очень просто
Читать далееИногда нам необходимо бывает выполнить определенную фоновую через определенное количество времени.
Допустим через 60 секунд или через 15 минут. Иногда нам нужно бывает отправить sms сообщение или почтовое сообщение в указанное время.
Допустим вы реализуете загрузку на видео с последующей конвертацией. Или регистрируете пользователя на вашем сайте , а после этого отправляете письмо и создаете преьюшку для его фотографии. Но как мы знаем это занимает определенное время и если мы это реализуем стандартным способом , то это заставляет пользователя ждать. А как мы знаем , пользователи не любят ждать. И чтобы он этого не ждал , мы можем добавить эти задачи в очередь и они будут выполняться асинхронно и пользователю не нужно будет дожидаться их окончания, чтобы пользоваться сайтом
Читать далееКак-то мне для моего блога понадобилось подключить текстовый редактор.Выбор пал на CKEditor. Тем более для этого редактора существует замечательный плагин Django-ckeditor
Читать далееGraphQL - это стандарт объявления структуры данных и способов получения данных, которую Facebook разработал в качестве альтернативы Rest API. В этой статье , мы покажем как с помощью замечательной библиотеки graphene-django легко использовать данную технологию на наших сайтах
Читать далееИногда при работе с базами данных нам приходится группировать результаты. Допустим , нам нужно подсчитать количество изображений для каждого товара или вычислить сумму для всех товаров или найти максимальную зарплату. Все это делается с помощью агрегатных функций и конструкции GROUP BY.
В данной статье рассмотрим , как с помощью Django ORM писать код, который на выходе генерирует SQL код с использованием GROUP BY и агрегатных функций.
Читать далее
Как-то мне понадобилось реализовать меню на сайте, где пункты меню брались из базы данных. На сайтах, которые я ранее писал на php это реализовывалось довольной легко, а вот на django я сразу не мог это реализовать. Самый топорный , это конечно же передавать пункты меню в шаблон в каждой вьюхе )) Но погуглив , я понял, что это реализуется довольно легко с помощью пользовательских шаблонных тегов.
Читать далееВ своем проекте я использую замечательную библиотеку для регистрации пользователей django-registration. Так вот мне понадобилось , после регистрации пользователя добавлять его в одну из групп.
Читать далееПодпишитесь на наш список рассылки, чтобы получать обновления из блога