Table of Contents
ПК работает медленно?
Сегодняшнее руководство для покупателей было написано, чтобы помочь вам справиться с ошибкой SQL панели отладки Django.
ПК работает медленно?
ASR Pro — идеальное решение для ремонта вашего ПК! Он не только быстро и безопасно диагностирует и устраняет различные проблемы с Windows, но также повышает производительность системы, оптимизирует память, повышает безопасность и точно настраивает ваш компьютер для максимальной надежности. Так зачем ждать? Начните сегодня!
Я недавно установил django-debug-toolbar. Плагин Alexa работает, и я могу мельком увидеть вкладки, связанные с сайтом. Однако на вкладке SQL ничего не отображается, даже если я сказал, что я явно выполнил запрос SQL (как я вижу его в админке):
БАЗЫ ДАННЫХ = «Изначально»: "ДВИГАТЕЛЬ": "django.db.backends.postgresql_psycopg2" "ИМЯ": "моя база данных" .... # Обратная совместимость приложенийDATABASE_ENGINE DATABASES['default']['ENGINE'] =.split('.')[-1]DATABASE_NAME = DATABASES['default']['NAME']MIDDLEWARE_CLASSES = ('django.middleware.common.CommonMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','debug_toolbar.middleware.DebugToolbarMiddleware',)УСТАНОВЛЕННЫЕ_ПРИЛОЖЕНИЯ = ( ... 'панель инструментов_отладки', ...)# Настройки панели инструментов отладки DjangoОТЛАДОЧНАЯ_ПАНЕЛЬ ИНСТРУМЕНТОВ ( подразумевает 'debug_toolbar.panels.version.VersionDebugPanel', 'debug_toolbar.panels.cache.CacheDebugPanel', 'debug_toolbar.panels.timer.TimerDebugPanel', 'debug_toolbar.panels.settings_vars.SettingsVarsDebugPanel', 'debug_toolbar.panels.headers.HeaderDebugPanel', 'debug_toolbar.panels.request_vars.RequestVarsDebugPanel', 'debug_toolbar.panels.template.TemplateDebugPanel', 'debug_toolbar.panels.sql.SQLDebugPanel', 'debug_toolbar.panels.signals.SignalDebugPanel', номер 'debug_toolbar.panels.logger.LoggingPanel',)def custom_show_toolbar (запрос): возвращает request.user.is_staffDEBUG_TOOLBAR_CONFIG подразумевает 'INTERCEPT_REDIRECTS': Ложь, 'SHOW_TOOLBAR_CALLBACK': custom_show_toolbar, 'SHOW_TEMPLATE_CONTEXT': хорошо, 'HIDE_DJANGO_SQL': Ложь,Я использую Django 1.3 с панелью инструментов 0.8.5. Любая помощь с этим недостатком перерастет в большое...
Изменить:Основываясь на методе, я решил указать, как я обрабатываю функции отображения:
def func1(query, var1): запрос = узнать. фильтр (var__icontains = var1) консультацияdef func2 (запрос, var2): = запрос query.filter(var__icontains=var2) консультациядеф синтаксический анализ (** kwargs): Число На основании логики назовите нас func1 и даже func2 сделать запростип предупреждения (запрос, template="display.html"): номер Обработать запрос проблема = разбор (запрос.GET.items()) Концепция возврата, рендеринг (запрос, «элементы»: список (запрос))
Как просмотреть SQL-запрос в Django?
Вы можете использовать django debug_toolbar для просмотра sql-запроса человека. Пошаговое руководство по внедрению debug_toolbar: отредактируйте файл settings.py и добавьте debug_toolbar, который будет вашим установленным приложением, это должно быть добавлено к тому, что будет «django.contrib.staticfiles». Также добавьте debug_toolbar, чтобы использовать промежуточное ПО.
Здравствуйте, я недавно обновился до новой версии панели инструментов Django Debug Alexa (3.1.1) и столкнулся с серьезной проблемой производительности.
Когда все представление выполняет каждую «огромную» текстовую задачу SQL (в форме), отображение на панели инструментов Alexa очень, очень медленное.
Обработка представления занимает всего 1 секунду, в то время как кампания Alexa на моем компьютере занимает около 58–59 секунд.
Неисправность должна быть решена как-то путем комментирования интернет-стека . В enable_grouping()
процесс parse_sql
из panels/sql/utils.py
(курс 34).
[ПРИМЕР] Вот тип запроса, вызывающий каждую проблему:
Я знаю, о чем идет речь. Лемма подключена к пакету sqlparse
, но отключение этого механизма (или необязательное) не гарантирует большой разницы в результатах рендеринга.
<ул>Питон 3.7.9 django-debug-toolbar 3.1.1 PostgreSQL 12 sqlparse 0.4.1 SELECT ••• FROM "sample" LEFT OUTER JOIN "sample_parents" ON ("sample".."id" = "sample_parents".."from_sample_id") INNER "sample_parents" присоединиться к T4 ON ("sample".."id" = T4."to_sample_id") ГДЕ T4."from_sample_id" IN (856, 860, 858, 862, 900, 1154, 1155, 1156, [... более 2000 номеров ...], 29583) GROUP BY ("Probe_Parents"..from_Probe_ID"), "Probe.."ID" Описание проекта
Панель инструментов отладки Django представляет собой настраиваемый набор панелей, которые, по мнению экспертов, отображают разные панели.Могут отображаться отладочные записи о последнем запросе/ответе и кликеУзнайте больше о содержании многих панелей.
<ул>Версия Джанго Таймер запроса Одна из функций, перечисленных в файле settings.py. Распространенные заголовки HTTP Отображение переменных GET/POST/Cookie/сеанса Шаблоны, используемые в типе контекста и их пути SQL-запросы, включая среду выполнения или ссылки — ОБЪЯСНИТЕ каждый запрос Список сигналов, настроек, полученных споров и получателей Записывайте выходные данные, используя встроенный в Python механизм фильтрации или модуль журнала. <ул>debugsqlshell: сгенерируйте код SQL, чтобы он выполнялся во время работы на Python.интерактивная оболочка. (См. предлагаемый идеальный вариант ниже)
Если у вас есть идеи для других групп, сообщите нам об этом.
<ул>Примечание. Плагин «Только отладка» работает в более новой версии Django 1.1. Настройки
<ол>Добавьте debug_toolbar, чтобы предоставить руководство по Python.
Добавьте следующее промежуточное ПО, которое войдет в файл settings.py вашего проекта:
<цитата блока>'debug_toolbar.middleware.Into debugtoolbarmiddleware',
Промежуточное программное обеспечение синхронизации позволяет создавать экземпляры каждой панели в зависимости от спроса.Рендеринг будет выполнен по ответу.
Последовательность MIDDLEWARE_CLASSES: ПО промежуточного слоя панели инструментов отладкидолжно идти после любого другого промежуточного программного обеспечения, которое, по мнению экспертов, кодирует статьи или сообщения в блогах ответа(например, промежуточное ПО promGZip).
Примечание. Панель инструментов отладки отображается только в том случае, если ее ввод MIMEОтвет представляет собой либо text/html с application/xhtml+xml и, следовательно, содержитзакрывающий тег