НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
163 of 182 menu

Таблица views_sort

Таблица views_sort является частью системы Views в Drupal и отвечает за хранение конфигурации критериев сортировки для представлений. Каждая запись в этой таблице определяет, по какому полю, в каком порядке (возрастающем или убывающем) и с какими дополнительными настройками происходит сортировка результатов представления.

Поля

Поле Тип данных Описание
id serial Уникальный числовой идентификатор (первичный ключ) критерия сортировки.
vid int Идентификатор версии представления. Внешний ключ для таблицы views_view.
table varchar(64) Имя таблицы базы данных, к которой относится поле сортировки (например, node_field_data).
field varchar(64) Имя поля или идентификатор плагина сортировки, по которому происходит сортировка (например, nid или created).
options text Сериализованный массив (PHP serialize) дополнительных опций для настройки критерия сортировки.
plugin varchar(64) Тип плагина, используемого для сортировки (например, standard, date, numeric).
weight int Вес критерия сортировки. Определяет порядок применения нескольких сортировок (от меньшего к большему).
exposed tinyint Флаг, указывающий, exposed ли критерий сортировки для пользователей (1) или нет (0).
expose text Сериализованный массив (PHP serialize) настроек для exposed сортировки, таких как label, identifier и др.

Как это работает

При создании или редактировании представления в административном интерфейсе Drupal (admin/structure/views) пользователь добавляет критерии сортировки. Конфигурация каждого добавленного критерия сохраняется в таблице views_sort. Поле vid связывает критерий с конкретной версией представления.

Когда представление выполняется, модуль Views строит SQL-запрос. Для каждого активного критерия сортировки из таблицы views_sort в запрос добавляется соответствующее выражение ORDER BY. Порядок добавления выражений определяется значением в поле weight.

Если для критерия установлен флаг exposed в значение 1, то пользователям будет показан элемент управления (например, select или радиокнопки) в блоке exposed filters/сортировок представления. Это позволяет посетителям сайта самостоятельно менять порядок сортировки результатов.

Поле plugin определяет handler, который будет использоваться для обработки сортировки. Разные плагины могут по-разному взаимодействовать с данными (например, стандартная сортировка, сортировка по дате, числовая сортировка).

Пример SQL-запроса

Получить все критерии сортировки для определенного представления можно с помощью запроса:

SELECT vs.*, vv.name as view_name FROM views_sort vs INNER JOIN views_view vv ON vs.vid = vv.vid WHERE vv.name = 'my_custom_view' ORDER BY vs.weight ASC;

Смотрите также

  • таблицу views_view,
    которая хранит основные данные о представлениях
  • таблицу views_filter,
    которая хранит информацию о критериях фильтрации
  • таблицу views_field,
    которая хранит информацию о полях для отображения
  • таблицу views_display,
    которая хранит информацию о дисплеях представлений
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить