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

Быстрое прототипирование с помощью Django, htmx и Tailwind CSS

В этом руководстве вы узнаете, как настроить Django с помощью htmx и Tailwind CSS. Цель как htmx, так и Tailwind - упростить современную веб-разработку, чтобы вы могли создавать дизайн и обеспечивать интерактивность, не выходя за рамки комфорта и легкости HTML. Мы также рассмотрим, как использовать Django Compressor для объединения и минимизации статических ресурсов в приложении Django.

Разбивка на страницы в Django

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

Централизованное ведение журнала с помощью Django, Docker и CloudWatch

Давайте рассмотрим, как настроить контейнеризованное приложение Django, работающее на экземпляре EC2, для отправки журналов в Amazon CloudWatch.

Отладка контейнеризованного приложения Django в PyCharm

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

Представления Django REST Framework - ViewSets

До этого момента мы рассматривали создание отдельных представлений с помощью APIViews и Общих представлений. Часто имеет смысл объединить логику представления для набора связанных представлений в один класс. Это может быть достигнуто в Django REST Framework (DRF) путем расширения одного из классов ViewSet. Классы ViewSet устраняют необходимость в дополнительных строках кода и в сочетании с маршрутизаторами помогают поддерживать согласованность ваших URL-адресов.

Общие представления (GenericViews) Django REST Framework

Часто используемые представления, которые тесно связаны с моделями баз данных (например, создание экземпляра модели, его удаление, перечисление экземпляров и т.д.), уже предварительно встроены в представления Django REST Framework (DRF). Эти элементы повторно используемого поведения называются Универсальными представлениями.

Django REST Framework Views - APIViews

Фреймворк Django REST Framework (DRF) имеет свой собственный набор представлений, которые наследуются от класса View Django. В этой серии из трех частей подробно рассматриваются все возможности DRF view - от простого представления, где многое приходится делать самостоятельно, до ModelViewSet, где вы можете настроить представление и запустить его с помощью всего нескольких строк кода. Поскольку виды построены один поверх другого, в этой серии также объясняется, как они переплетаются.

Освоение манипулирования множественными наборами запросов в Django

Одной из самых мощных функций Django является QuerySet, который представляет собой коллекцию объектов из базы данных. QuerySet можно строить, фильтровать, нарезать или вообще передавать, не обращаясь к базе данных. Никаких действий с базой данных не происходит до тех пор, пока мы не выполним какие-либо действия по оценке QuerySet, например итерацию, нарезку, вызов len() или преобразование в список.

Основы библиотеки Python Mock Object

Когда вы пишете надежный код, тесты необходимы для проверки правильности, надежности и эффективности логики вашего приложения. Однако ценность ваших тестов зависит от того, насколько хорошо они демонстрируют эти критерии. Такие препятствия, как сложная логика и непредсказуемые зависимости, затрудняют написание ценных тестов. Библиотека Python mock-объектов unittest.mock поможет вам преодолеть эти препятствия.

Использование PyInstaller для легкого распространения приложений на Python

PyInstaller дает вам возможность создать папку или исполняемый файл, который пользователи смогут сразу же запустить без дополнительной установки. Чтобы в полной мере оценить возможности PyInstaller, полезно вернуться к некоторым проблемам распространения, которых PyInstaller поможет вам избежать.

Рефакторинг приложений на Python для упрощения

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

Распознавание лиц с помощью Python

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

Чтение и запись файлов в Python

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

Повышение эффективности классов Python с помощью super()

Хотя Python не является чисто объектно-ориентированным языком, он достаточно гибкий и мощный, чтобы позволить вам строить свои приложения в объектно-ориентированной парадигме. Одним из способов, с помощью которого Python достигает этого, является поддержка наследования, которую он осуществляет с помощью super().

Паттерн Фабрика и его реализация в Python

В этой статье рассматривается паттерн проектирования Factory Method и его реализация в Python. Паттерны проектирования стали популярной темой в конце 90-х годов после того, как так называемая Банда четырех (GoF: Gamma, Helm, Johson и Vlissides) опубликовала свою книгу Design Patterns: Elements of Reusable Object-Oriented Software.

Разработка на Python в Visual Studio Code

Один из самых крутых редакторов кода, доступных программистам, Visual Studio Code, является открытым исходным кодом, расширяемым, легким редактором, доступным на всех платформах. Именно эти качества делают Visual Studio Code от Microsoft очень популярным и отличной платформой для разработки на Python.

Асинхронный ввод-вывод в Python

Async IO - это дизайн параллельного программирования, который получил специализированную поддержку в Python, быстро развиваясь с Python 3.4. Возможно, вы с ужасом думаете: "Конкурентность, параллелизм, потоки, многопроцессорность. Это уже слишком много для понимания. А где же здесь async IO?" Этот учебник призван помочь вам ответить на этот вопрос и дать более глубокое понимание подхода Python к асинхронному вводу-выводу данных.

Проверка типов в Python

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

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

В этом уроке вы узнаете, как использовать Django и GeoDjango для создания веб-приложения на основе местоположения с нуля. Вам предстоит создать простое приложение "Близлежащие магазины", в котором будут перечислены магазины, расположенные ближе всего к местоположению пользователя.

Непрерывная интеграция в Python

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