Вывод данных с группировкой во views drupal

Типичная проблема при использовании модуля views — как вывести результат группировки, т.е. столбец вроде COUNT(*).

Это можно сделать штатными средствами модуля views. Для задачи вроде вывода под-итогов, сумм по сгрупированным строкам — смотрите модуль views_calc.

Итак, вводная по задаче:

  • вывести количество публикаций (node), сгруппированное по значению термина таксономии.
  • Таблицу отсортировать по имени термина (taxonomy.name).

У меня в задаче были публикации типа lot и использовался словарь таксономии «Вид разрешенного использования». Как фильтровать контент по типу публикаций, я думаю, рассказывать не нужно.

Создание полей views

Создайте views на базе элементов content с форматом представления «Table», это автоматически переведет view в режим использования полей (fields).

Нам требуется всего два поля — поле публикации, связанное с таксономией, и node.nid.

Включите use aggregation в advanced настройках представления.

Возле каждого из полей появится ссылка Aggregation settings, где для NID выберите COUNT, а для поля таксономии оставьте группировку результатов.

На этом этапе у вас уже должна получиться таблица с подсчетом количества публикации по определенному термину.

Сортировка по имени термина

Сейчас у вас подключено поле таксономии, которое содержит tid, а сортировку нужно сделать по свойству термина name, которого пока в запросе нет.

Через настройки advanced добавьте связь (Relationships -> add) с объектом «taxonomy terms on node«.

Здесь выберите словарь и обязательно поставьте галочку — Require this relationship.

Теперь в секции «сортировка» (Sort criteria) можно добавить поле Taxonomy term: Name. Что позволит сортировать по названию термина.

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

Удаление nodequeue программно

Май 28, 2021 г.

Небольшой сниппет (snippet) по удалению сущностей nodequeue из кода. Может быть полезно при миграции данных. Удобно оперировать с машинным именем нод-кью, но функция удаления требует ID, потому код обычно обретает следующие формы: [crayon-69e30acf9ed22098359502/] ...

Читать

Добавление пунктов меню в Administration menu (admin_menu)

Апрель 8, 2020 г.

Популярный административный модуль admin_menu, собирает всё самое нужное и важное для управления сайтом. И хотя в 7 версии в ядре вы найдете модуль tool, обладающий похожим функционалом, ему не удалось заменить admin_menu. Далее, разберем код, добавляющий ...

Читать

Работа со схемой данных в Drupal

Январь 17, 2019 г.

В определенный момент стандартные схемы данных Drupal вас могут перестать удовлетворять, и вы решите добавить свои таблицы в базу данных сайта. Как это ...

Читать

Вывод строки запроса построенного в db_select

Апрель 11, 2019 г.

Конструктор запросов db_select позволяет абстрагироваться от движка базы данных. Если запрос довольно сложный, то на этапе тестирования может потребоваться, что называется, убедиться в том, что конечный запрос на языке SQL к базе именно тот, что вы ожидаете. ...

Читать
 

Комментарии к «Вывод данных с группировкой во views drupal»

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



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