По мере роста вашего проекта на Django вы можете заметить, что загрузка сайта администратора занимает все больше времени. В основном это связано с пагинатором Django, который использует медленный запрос SELECT COUNT(*) для вычисления количества строк в таблице. В какой-то момент на этот запрос будет приходиться более 95% времени загрузки страницы.
Как разработчику программного обеспечения или инженеру, недостаточно знать, как создавать полезные решения – вы также должны обеспечить их безопасность. При разработке и развертывании вашего программного обеспечения решающее значение имеет определение приоритетов для ваших пользователей, поскольку, если пользователи не могут использовать ваше приложение, оно становится бесполезным.
В этом руководстве мы рассмотрим, как создавать серверные компоненты пользовательского интерфейса в Django с помощью django-viewcomponent, который может помочь вам повторно использовать код и поддерживать его в чистоте и ремонтопригодности.
В этой статье подробно описываются различия между разработкой приложения с использованием Vue и Django REST Framework (DRF) по сравнению с HTMX и Django. Мы рассмотрим простой пример того, как работают обе комбинации, и сравним их сильные и слабые стороны.
Одной из самых мощных функций Django является QuerySet, который представляет собой коллекцию объектов из базы данных. QuerySet можно строить, фильтровать, нарезать или вообще передавать, не обращаясь к базе данных. Никаких действий с базой данных не происходит до тех пор, пока мы не выполним какие-либо действия по оценке QuerySet, например итерацию, нарезку, вызов len() или преобразование в список.
Когда вы пишете надежный код, тесты необходимы для проверки правильности, надежности и эффективности логики вашего приложения. Однако ценность ваших тестов зависит от того, насколько хорошо они демонстрируют эти критерии. Такие препятствия, как сложная логика и непредсказуемые зависимости, затрудняют написание ценных тестов. Библиотека Python mock-объектов unittest.mock поможет вам преодолеть эти препятствия.
PyInstaller дает вам возможность создать папку или исполняемый файл, который пользователи смогут сразу же запустить без дополнительной установки. Чтобы в полной мере оценить возможности PyInstaller, полезно вернуться к некоторым проблемам распространения, которых PyInstaller поможет вам избежать.
Если вы умеете писать и поддерживать чистый, простой код на Python, то это сэкономит вам много времени в долгосрочной перспективе. Вы сможете тратить меньше времени на тестирование, поиск ошибок и внесение изменений, когда ваш код хорошо изложен и прост в исполнении.
Сайт администратора Django предоставляет разработчикам простой, но эффективный способ управления своими моделями и создания устойчивых проектов. Он позволяет создавать, просматривать, обновлять и удалять записи из ваших приложений. В этой статье вы узнаете, как зарегистрировать свой models на сайте администратора, создать учетную запись суперпользователя, войти на свой сайт и пользоваться им, а также настроить свой сайт администратора.
Компьютерное зрение - это захватывающая и развивающаяся область. Здесь можно решить массу интересных задач! Одна из них - обнаружение лиц: способность компьютера распознать, что на фотографии есть человеческое лицо, и сказать, где оно находится. В этой статье вы узнаете об обнаружении лиц с помощью Python.
Одна из самых распространенных задач, которые вы можете решать с помощью Python, - это чтение и запись файлов. Будь то запись в простой текстовый файл, чтение сложного журнала сервера или даже анализ необработанных байтовых данных, все эти ситуации требуют чтения или записи файла.
Хотя Python не является чисто объектно-ориентированным языком, он достаточно гибкий и мощный, чтобы позволить вам строить свои приложения в объектно-ориентированной парадигме. Одним из способов, с помощью которого Python достигает этого, является поддержка наследования, которую он осуществляет с помощью super().
В этой статье рассматривается паттерн проектирования Factory Method и его реализация в Python. Паттерны проектирования стали популярной темой в конце 90-х годов после того, как так называемая Банда четырех (GoF: Gamma, Helm, Johson и Vlissides) опубликовала свою книгу Design Patterns: Elements of Reusable Object-Oriented Software.
Один из самых крутых редакторов кода, доступных программистам, Visual Studio Code, является открытым исходным кодом, расширяемым, легким редактором, доступным на всех платформах. Именно эти качества делают Visual Studio Code от Microsoft очень популярным и отличной платформой для разработки на Python.
Async IO - это дизайн параллельного программирования, который получил специализированную поддержку в Python, быстро развиваясь с Python 3.4. Возможно, вы с ужасом думаете: "Конкурентность, параллелизм, потоки, многопроцессорность. Это уже слишком много для понимания. А где же здесь async IO?" Этот учебник призван помочь вам ответить на этот вопрос и дать более глубокое понимание подхода Python к асинхронному вводу-выводу данных.
В этом руководстве вы познакомитесь с проверкой типов в Python. Традиционно типы обрабатывались интерпретатором Python гибко, но неявно. Последние версии Python позволяют задавать явные подсказки типов, которые могут быть использованы различными инструментами для более эффективной разработки кода.
В этом уроке вы узнаете, как использовать Django и GeoDjango для создания веб-приложения на основе местоположения с нуля. Вам предстоит создать простое приложение "Близлежащие магазины", в котором будут перечислены магазины, расположенные ближе всего к местоположению пользователя.
Когда вы пишете код самостоятельно, единственный приоритет - заставить его работать. Однако работа в команде профессиональных разработчиков программного обеспечения сопряжена с множеством проблем. Одна из таких проблем - координация работы многих людей над одним и тем же кодом.
Вместе мы научимся работать с рекурсией в наших программах на Python, освоив такие понятия, как рекурсивные функции и рекурсивные структуры данных. Мы также поговорим о сохранении состояния во время рекурсии и избежании повторных вычислений путем кэширования результатов. Это будет очень весело. Вперед и вверх!
Этот учебник предназначен для тех, кто написал фантастическое приложение на Python, но еще не написал ни одного теста. Тестирование на Python - это огромная тема, которая может быть очень сложной, но это не обязательно должно быть трудно. Вы можете начать создавать простые тесты для своего приложения в несколько простых шагов, а затем развивать их дальше.