Таблица views_view_argument
Таблица views_view_argument является частью системы представлений (Views) в Drupal и отвечает за хранение конфигурации аргументов. Аргументы позволяют динамически фильтровать содержимое представления на основе переданных параметров, чаще всего из URL.
Поля
| Поле | Тип данных | Описание |
|---|---|---|
vid |
int |
Идентификатор версии представления. Внешний ключ к таблице views_view.
|
argument |
varchar(64) |
Машинное имя аргумента. Уникальный идентификатор в контексте конкретного представления и дисплея. |
id |
int |
Идентификатор аргумента. Часть первичного ключа. |
field |
varchar(64) |
Машинное имя поля, на основе которого строится аргумент (например, nid, tid).
|
title |
varchar(255) |
Заголовок, который будет отображаться для результатов, отфильтрованных по этому аргументу. |
default_action |
varchar(32) |
Действие по умолчанию, если аргумент не предоставлен (например, ignore, default, not found).
|
default_argument_type |
varchar(32) |
Тип аргумента по умолчанию (например, fixed, php, raw).
|
default_argument_options |
text |
Сериализованный массив (serialize) с дополнительными настройками для аргумента по умолчанию.
|
default_argument_skip_url |
int |
Флаг, указывающий, следует ли пропускать аргумент, если он присутствует в URL. |
validate_type |
varchar(32) |
Тип валидации для аргумента (например, php, numeric).
|
validate_fail |
varchar(32) |
Действие при неудачной валидации аргумента (например, not found, empty).
|
Как это работает
Когда создается или редактируется представление, администратор может добавить 1 или несколько аргументов (контекстуальных фильтров). Конфигурация каждого аргумента сохраняется в таблице views_view_argument. Каждая запись связана с определенной версией (vid) представления через внешний ключ.
При обращении к странице представления (например, по пути /news/%) Drupal Views извлекает значение аргумента из URL (%) и использует конфигурацию из этой таблицы, чтобы понять, как его обработать. Это включает в себя:
- Какой тип сущности или поле использовать для фильтрации (
field). - Что делать, если аргумент не передан (
default_action). - Как проверить корректность переданного значения (
validate_type).
Аргументы являются мощным инструментом для создания динамических страниц, таких как страницы таксономии, пользовательские профили или любые другие списки контента, фильтруемые по параметрам URL.
Пример SQL-запроса
Получить конфигурацию всех аргументов для определенной версии представления можно следующим запросом:
SELECT argument, field, title, default_action
FROM views_view_argument
WHERE vid = 15
ORDER BY id;
Смотрите также
-
таблицу
views_view,
которая хранит основные данные о представлениях -
таблицу
views_display,
которая хранит настройки дисплеев представлений -
таблицу
views_filter,
которая хранит конфигурацию обычных фильтров -
таблицу
views_cache,
которая отвечает за кеширование представлений