Отладка запроса SQL, получаемого в модуле views Drupal

Сложные представления (views) требуют понимания того, что в итоге получилось, какой запрос сформировался в результате магии и такой то матери в конструкторе View UI.

Итак, как получить SQL запрос, который формируется во views drupal?

В этом нам поможет hook_views_pre_execute().

Внутри реализации стоит ограничить вывод только контекстом интересующего нас представления. Это можно сделать по имени views.

Так вы получите представление о запросе, но он будет содержать вставки вроде :placeholder_1 и т.п, т.е. являться шаблоном запроса, а не готовой SQL строкой.

Как получить сразу SQL?

Подключите модуль devel. Этот сервисный модуль предоставляет множество функций для форматирования и вывода отладочной информации. Нам понадобится функция — dpq().

Теперь мы получим готовый mySQL запрос.

Написать комментарий

Мало букафф? Читайте есчо !

Установим контекстные фильтры в drupal views программно

Август 30, 2021 г.

Пример кода как рендерить блок views с программной установкой contextual filters. Контекстные фильтры устанавливаются методом ViewExecutable::setArguments(array $ARGS). В примере я передаю пару аргументов в качестве значений контекстных фильтров. ...

Читать

Изменить текст no-results во views программно

Февраль 5, 2020 г.

Drupal views позволяют сконфигурировать сообщение на случай если результат запроса пуст и нельзя срендерить какой либо контент для данного представления. Данная опция находится во вкладке 'advanced' вашего представления. Но в данной статье я покажу ...

Читать

 

Комментарии к «Отладка запроса SQL, получаемого в модуле views Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: