4.5.4. Views Связи (Relations)
Связи (relations) в друпале очень важная часть, так соединяются термины таксономии и контент, пользователи и контент, товары и отображение товаров в commerce. Благодаря этому мы можем при выводе полей материала вывести поля пользователя, когда выводим товары, то вывести и их цену и артикул.
Благодаря этому мы можем при выводе полей материала вывести поля пользователя, когда выводим товары, то вывести и их цену и артикул.
Давайте создадим представление, который будет выводить в блоке информацию о пользователе создавшим материал на странице которого мы находимся. В одном из прошлых уроков мы уже разобрали как использовать контекстный фильтр и выводить информацию о страницы на которой находимся:
http://drupalbook.org/ru/drupal/453-views-argumenty-kontekstnye-filtry
Имя представления: Информация об авторе
Машинное имя: athor_info
Настройки представления: Содержимое, Объявления
Создаем блок, с одной записью.
Теперь нужно добавить контекстный фильтр по Содержимое: ID Содержимого:
Как и в прошлой статье ставим действие Передавать значение по умолчанию: ID материала из URL.
Теперь нам доступны поля ноды на странице которой мы находимся. Но нам нужны поля автора. В данный момент нам доступно только поле UID автора:
Пришло время добавить связь автора:
После этого у нас появится возможность добавлять поля автора ноды: аватарку, имя, дата последненго захода на сайт и прочие поля. Когда вы добавляете его поля, то вьюс автоматически выставляет полю связь:
Я добавил сразу несколько полей:
Содержимое: Автор
(автор) Пользователь: Изображение
(автор) Пользователь: Preferred language
(автор) Пользователь: User status
(автор) Пользователь: UUID
(автор) Пользователь: Данные
(автор) Пользователь: Дата обновления
(автор) Пользователь: Имя
Давайте теперь выведем этот блок на странице объявлений. Можете выставить в области видимости блока, чтобы он отображался только на типах материала Объявления.
Ну вот и все, мы разобрались как пользоваться связями во вьюсе, позже мы конечно же еще не раз будем использовать их, поэтому если не все понятно сейчас, то просто переходите к следующей статей.