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

Миграция базы данных Django: всесторонний обзор

Веб-инфраструктура Django предназначена для работы с серверной частью реляционной базы данных на основе SQL, чаще всего PostgreSQL или MySQL. Если вы никогда раньше не работали напрямую с реляционной базой данных, управление тем, как ваши данные хранятся/доступны, и обеспечение их согласованности с кодом вашего приложения, является важным навыком, который необходимо освоить.

Шаблоны Django: лучшие практики

Django, как веб-фреймворк, использует шаблоны как способ создания статического HTML из вывода представления Django. На практике шаблоны Django — это просто HTML-файлы с особым синтаксисом и набором инструментов, которые позволяют Django отображать HTML-страницу на лету для посещающего пользователя. Шаблоны легко настраиваются, но они должны быть простыми, а большая часть «тяжелой» логики находится в представлении. Давайте углубимся и изучим некоторые стандартные способы решения распространенных проблем.

Расширенные модели Django: улучшите свою разработку на Python

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

Учебное пособие по созданию пользовательской модели пользователя Django

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

Аутентификация OAuth в Django с помощью social-auth

Во время разработки моего последнего проекта django мне пришлось обеспечить аутентификацию пользователей с помощью учетных записей Google. Для этого я использовал библиотеку social-app-django, которая реализует механизм аутентификации/регистрации, который поддерживает несколько провайдеров аутентификации и протоколов, таких как OAuth (версии 1 и 2) или OpenId.

Оптимизации в Django: select_related, prefetch_related, индексы БД и кэширование

Django - это популярный фреймворк для создания веб-приложений на языке Python. Одним из ключевых преимуществ Django является его ORM (Object-Relational Mapping), который позволяет работать с базами данных через объекты Python. Однако, при работе с ORM могут возникать проблемы производительности, так как некоторые операции могут быть достаточно медленными. В этой статье мы рассмотрим способы оптимизации работы с базой данных в Django, включая использование метода select_related и другие методы ускорения работы вашего приложения.

Введение в Django Simple History

Разве не было бы полезно, если бы мы могли документировать изменения в нашей жизни и возвращаться к ним позже по желанию? Это позволило бы нам лучше анализировать ситуации, помнить, о чем мы думали, или помогало бы нам помнить, как мы пришли к нашему нынешнему состоянию. Хотя в настоящее время такого инструмента для изменения жизни не существует, в Django он существует. Это называется django-simple-history.

Фильтрация и разбиение на страницы с Django

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

Как использовать Celery для планирования задач

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

Тестирование электронной почты в Django

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

Как реализовать аутентификацию по токену с помощью Django REST Framework

В этом руководстве вы узнаете, как реализовать аутентификацию на основе токенов с использованием Django REST Framework (DRF). Аутентификация токена работает путем обмена имени пользователя и пароля на токен, который будет использоваться во всех последующих запросах, чтобы идентифицировать пользователя на стороне сервера.

Как создать миграцию данных Django

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

Итераторы и итерации в Python: выполнение эффективных итераций

Итераторы Python и iterables — это два разных, но связанных инструмента, которые пригодятся, когда вам нужно выполнить итерацию по потоку данных или контейнеру. Итераторы обеспечивают и контролируют процесс итерации, в то время как итерации обычно содержат данные, которые вы хотите перебирать по одному значению за раз.

Отправка электронной почты с помощью Python

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

Профилирование и оптимизация узких мест в Django

В предыдущей статье мы узнали, с чего начать оптимизацию производительности в приложении django, и выяснили, какие API следует оптимизировать в первую очередь. В этой статье мы узнаем, как оптимизировать эти выбранные API из приложения.

Python 3.11: новые классные возможности, которые вы можете попробовать

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

Полное руководство по множествам в Python

Класс set — одна из ключевых структур данных в Python. Это неупорядоченный набор элементов без дубликатов. Он в определенной степени представляет собой математическое множество, и в Python существует множество широко используемых математических операций для множеств. Часто операции над множествами выполняются намного быстрее, чем альтернативные операции над списками, поэтому для написания эффективного кода множества необходимы. В этой статье я объясню все тонкости набора классов. Приступим к делу.

Представления на основе классов или функции в Django?

В этой статье мы рассмотрим различия между представлениями Django на основе классов (CBV) и представлениями на основе функций (FBV). Мы сравним и сопоставим, а также углубимся в плюсы и минусы каждого подхода (наряду со встроенными в Django универсальными представлениями на основе классов). К концу у вас должно быть хорошее понимание того, когда использовать один над другим.

Константы Python: Улучшение управляемости вашего кода

В программировании термин константа относится к именам, представляющим значения, которые не меняются во время выполнения программы. Константы являются фундаментальным понятием в программировании, и разработчики Python используют их во многих случаях.

Параллелизм, конкурентность и AsyncIO в Python — на примере

В этом руководстве рассматривается, как ускорить операции, связанные с процессором и вводом-выводом, с помощью многопроцессорной обработки, многопоточности и AsyncIO.