Статьи, новости и советы по Django и Python

Как создать REST API в Django

Если вы создаете веб-приложение или мобильное приложение для мобильных устройств, скорее всего, вам понадобится способ отправки и получения данных между вашим приложением и сервером. Вот тут-то и пригодятся REST API. Они помогают приложениям взаимодействовать друг с другом – вроде как официант принимает у вас заказ и приносит еду обратно. И если вы используете Django, вы уже на полпути к успеху.

Как создать API GraphQL в Django

Если вы создаете приложение на Django и подумываете об использовании GraphQL, вы не одиноки. REST используется уже много лет, но GraphQL быстро становится излюбленным вариантом для разработчиков, которым нужна большая гибкость и меньше переходов между интерфейсом и серверной частью.

Как использовать сигналы Django в своих проектах

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

Как расширить модель пользователя Django

Если вы работаете с Django и создаете что–либо, связанное с учетными записями пользователей – например, блог, магазин или сайт для подписки, - вы, скорее всего, столкнетесь с тем, что модели пользователя по умолчанию просто недостаточно. Возможно, вы хотите добавить фотографию профиля, номер телефона или дополнительные разрешения. Дело в том, что расширение пользовательской модели Django поначалу может показаться запутанным. Это звучит технически, и Интернет полон советов, которые либо пропускают важные детали, либо становятся слишком сложными

Начало работы с Django: создание приложения-портфолио

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

Создайте личный дневник с помощью Django и Python

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

Учебник по шаблонизации Jinja

Jinja - это мощный движок шаблонов, обычно используемый в веб-приложениях на Python для создания динамических веб-страниц. Jinja также поддерживает автономное использование, позволяя вам создавать текстовые файлы с программно заполненным контентом, что делает его универсальным за пределами веб-фреймворков, таких как Flask и Django. В этом руководстве вы узнаете, как установить Jinja, создавать и визуализировать шаблоны Jinja, а также использовать такие функции Jinja, как условные операторы и циклы. Вы также узнаете, как использовать фильтры и макросы для улучшения функциональности ваших шаблонов, а также узнаете, как вставлять шаблоны и легко интегрировать Jinja в веб-приложение Flask.

Начало работы с управлением пользователями Django

Управление пользователями Django позволяет интегрировать аутентификацию пользователей и управление ими в ваши веб-приложения. Используя Django, вы можете использовать встроенную в платформу систему аутентификации для управления регистрацией, входом в систему и выходом из системы. С помощью всего лишь нескольких дополнительных шаблонов вы можете разрешить пользователям самостоятельно сбрасывать и изменять свои пароли.

Создайте блог с использованием Django, GraphQL и Vue

Вы регулярно пользуетесь Django? Вам не хочется разделить свой серверный и интерфейсный компоненты? Хотите ли вы управлять сохранением данных в API при отображении данных в одностраничном приложении (SPA) в браузере, используя JavaScript-фреймворк, такой как React или Vue?

Как отобразить Markdown в приложении Django

Markdown - это язык форматирования обычного текста, который может автоматически преобразовываться в HTML для публикации в Интернете. Благодаря доступному синтаксису и широкому использованию в генераторах статических сайтов, приложениях для повышения производительности и инструментах управления контентом, он стал популярной альтернативой текстовым редакторам как для технических, так и для нетехнических создателей контента.

Создайте блог с нуля с помощью Django

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

Асинхронные задачи с Django и Celery

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

Создание многопользовательского приложения с помощью Django

В этом руководстве объясняется, как реализовать веб-приложение с несколькими пользователями в Django, используя django-tenants и django-tenants-users пакеты. Описанное решение идеально подходит для проектов среднего и крупного размера "Программное обеспечение как услуга" (SaaS).

Запуск фоновых задач из Django Admin с помощью Celery

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

Оптимизация запросов Django - defer, only, exclude

Запросы к базе данных обычно являются узким местом большинства веб-приложений. Понимание того, как писать эффективные запросы, может помочь вам значительно ускорить работу ваших приложений. При работе с базами данных эмпирическое правило заключается в том, что извлечение меньшего количества данных, как правило, происходит быстрее.

Индексация базы данных в Django

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

Избегайте подсчета в пагинации Django

Используемый по умолчанию Пагинатор использует объектный COUNT(*) запрос для вычисления количества страниц. По мере роста вашей базы данных этот запрос может значительно замедляться и в конечном итоге привести к увеличению времени загрузки страницы, а иногда и к превышению 90%.

Ограничение типов контента в модели Django

В этой статье мы рассмотрим, как ограничить типы контента при работе с общими отношениями в Django

Разработка API GraphQL в Django с помощью Strawberry

В постоянно меняющемся ландшафте веб-разработки предоставление эффективных и гибких API имеет решающее значение. В то время как RESTful API были основным продуктом на протяжении многих лет, GraphQL стал мощной альтернативой, предлагая большую гибкость и эффективность при поиске данных. Позволяя клиентам запрашивать именно то, что им нужно, GraphQL сокращает избыточную и недостаточную выборку данных, повышая производительность и удобство использования ваших приложений.

Работа со статическими и медиа-файлами в Django

В этой статье рассматривается, как работать со статическими и мультимедийными файлами в проекте Django, локально и в рабочей среде.