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

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

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

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

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

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

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

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

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

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

Использование контекста публикации во views

Февраль 10, 2024 г.

У вас есть публикация и в ней задана категория (таксономия). Задача - использовать значение выбранной категории во view, которая отображается на данной ...

Читать

Вставляем объект views в нужное место шаблона средствами PHP

Сентябрь 9, 2016 г.

Мощный, всепоглощающий, великий и ужасный модуль VIEWS. Очень коварный, он толкает программиста с пути "только хардкор" и разработки на PHP на скользкую ...

Читать

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

Август 30, 2021 г.

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

Читать

Дополняем результаты views

Февраль 14, 2024 г.

Пример того, как можно дополнить результаты views в Drupal 9/10. Задача - вывести для статьи блок со связанными публикациями. В начале нужно было просто выводить последние статьи того же типа, а потом у заказчика возникло желание переопределять выдачу, ...

Читать
 

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

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



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