Вывод данных с группировкой во 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. Что позволит сортировать по названию термина.

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

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

Возможные проблемы Invalid form POST data

Октябрь 24, 2019 г.

Браузер сообщает об ошибке всплывающим окном вроде того, что на скриншоте. Сообщается, что AJAX завершен неправильно. Но основной симптом - что не работают ...

Читать

Вывод меню с фиксированной глубиной в Drupal

Март 25, 2019 г.

Блок меню core модуля menu позволяет вывести всю иерархию меню полностью, но иногда требуется показать только 1-2 верхних уровня. Посмотрим как организовать такой вывод. Drupal в модуле menu использует функцию menu_tree('ИМЯ МЕНЮ'), чтобы рендерить ...

Читать

 

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

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



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