Как преобразовать запрос представления Drupal в запрос MySQL?


На моем сайте есть несколько просмотров. Я настроил параметр для получения запроса представлений. Я хочу преобразовать этот запрос в запрос MySQL для запуска и получения результата напрямую.

Как я могу это сделать?

 1
Author: Krishna Mohan, 2014-11-03

2 answers

Попробуйте Представления Показать запрос модуль

Этот модуль показывает реальный SQL-запрос в пользовательском интерфейсе Views во время предварительного просмотра в реальном времени.

"Реальный запрос" означает, что он переписан крючками query_alter. Например, добавляются проверки доступа к узлу, поэтому для этого требуется выбрать пользователя, от имени которого предполагается выполнить запрос. Таким образом, модуль добавляет поле "Идентификатор пользователя для отображения окончательного запроса" в форму предварительного просмотра представлений. Вы должны ввести числовой идентификатор пользователя в это поле, чтобы просмотреть реальный SQL запрос.

Этот модуль позволяет отображать SQL-запрос не только во время предварительного просмотра в реальном времени, но и при обычном выполнении представления. Вы можете добавить нижний колонтитул в представление со следующим PHP-кодом:

<?php
$rows = array();
$view->exposed_input['views_show_query_uid'] = 1;
views_show_query_views_preview_info_alter($rows, $view);
drupal_set_message($rows['query'][0]);
?>

ИЛИ

Есть еще один модуль под названием Кодировщик запросов, который преобразует SQL-запрос в код уровня абстракции базы данных Drupal.

enter image description here

 6
Author: Krishna Mohan, 2020-06-15 09:13:00

Также стоит упомянуть, на всякий случай, если вы не знали, представления покажут вам SQL, который он генерирует и использует, если вы включите его видимость на странице настроек представлений

  • перейдите в раздел /администратор/структура/представления/настройки
  • Проверка - Отображение информации и статистики о просмотре во время предварительного просмотра в реальном времени
  • Проверка - Показать SQL-запрос

Однако этот запрос может быть серьезно сложным, если у вас много связей и контекстных фильтров. Другие модули рекомендовано @Krishnamohan сделать его намного более удобоваримым. Но это то, что он делает изначально.

 0
Author: jowan sebastian, 2014-11-09 11:10:01