Пакет модулей Views является важнейшим, наравне с CCK, инструментом разработки сайтов на Drupal.
Пакет предназначен для создания произвольных списков объектов, к которым может быть применена фильтрация и сортировка на основе определённых критериев. Эти произвольные списки, называемые видами, могут отображаться и как самостоятельные страницы, и как блоки. Доступ к видам может быть ограничен и предоставлен только зарегистрированным пользователям или пользователям, которым назначена определённая роль.
В пакет включены модули:
На странице Administer | Site building | Views перечислены созданные на сайте виды, а также размещены ссылки на страницы добавления вида (Add), импортирования видов (Import) и страницу инструментов (Tools).

рис1
Для каждого вида в списке доступны следующие действия: редактирование (Edit), экспорт кода вида (Export), клонирование, т.е. создание идентичного вида без необходимости дополнительной настройки (Clone), удаление (Delete) и для отключённых видов их включение (Enable).
Для каждого присутствующего в системе вида на этой странице указаны тип вида (view type) и его наименование, заголовок вида (Title), путь к странице вида (Path), формы представления вида и краткое описание вида.
Существуют три типа видов (view type):
Создание нового вида
Рассмотрим процесс добавления нового вида (Add).

рис2
Сначала нужно указать наименование вида (View name) с помощью латинских символов, цифр и знаков подчёркивания. Также можно указать описание вида (View description), ключевое слово вида (View tag) и выбрать тип содержания, для которого создаётся вид (View type). После нажатия кнопки Next (далее) появляется страница настройки вида (Edit).

рис3
Сначала показываются настройки для способа отображения Defaults (по умолчанию). Этот способ отображения в действительности не используется для отображения, а сохраняет в себе основные настройки вида. Поэтому для использования вида нужно добавить способ отображения, или несколько способов отображения (кнопка Add display и список способов отображения над ней). Все добавляемые способы отображения перечислены в этом же блоке под ссылкой Defaults.
В случае выбора способа отображения Page (страница) задаётся путь к странице. Также возможно автоматическое создание пункта меню, указывающего на эту страницу. Вид при страничном способе отображения показывается так же, как и основное содержание сайта, т.е. в области Content, определяемой выбранной темой. При страничном отображении вид может получать аргументы из URL-адреса.
Вид со способом отображения Block (блок) показывается на странице управления блоками (Administer | Site building | Blocks). Соответственно, вид в этом случае может быть размещён в любой области страницы. Блок не может принимать аргументы, но при настройке добавляемых аргументов можно указать значения аргументов, используемые по умолчанию.
Способ отображения Attachment (присоединение) присоединяется к другому способу отображения того же самого вида, поэтому эти два (или более) способа отображения используются одновременно при отображении вида. Такой способ отображения позволяет, например, показывать вспомогательную информацию перед или после основной информации. В частности, можно в качестве вспомогательной информации использовать перечень терминов классификатора (используемых как аргумент для основного способа отображения), а в качестве основной информации отображать перечень объектов, соответствующих выбранному термину.
Способ отображения Feed (рассылка) позволяет присоединить к виду RSS-рассылку.
Правее блока добавления и выбора способа отображения находятся блоки настройки параметров вида. В каждом блоке перечислены наименования параметров и их значения. При нажатии на значение параметра ниже появляется форма настройки соответствующего параметра, а строка параметра при этом подсвечивается.
Сначала рассмотрим параметры вида, для которого выбран способ отображения в виде блока (Block) (вид создан для отображения содержания сайта (Node)).
В блоке Basic settings (основные настройки) для способа отображения в виде блока (Block) указываются следующие параметры:
В блоке Block settings (настройки блока) в поле Admin (администрирование) указывается наименование блока, которое показывается на странице управления блоками (Administer | Site building | Blocks).
Блок Relationships (отношения) позволяет определить объекты, показываемые одновременно совместно с редактируемым видом. Установленные отношения позволяют отображать и полноценно использовать типы содержания, отличные от того типа содержания, для которого создан вид (Views | Add | View type). Установка отношений (т.е. того, как соотносятся различные объекты) позволяет (если информация об отношениях доступна) тщательнее настроить параметры аргументов, фильтров и полей вида. Для добавления отношения нужно нажать на кнопку со знаком «+». Кнопка со стрелками, расположенная рядом, служит для изменения порядка уже добавленных отношений. При добавлении отношений нужно выбрать необходимые объекты. Затем для выбранных объектов указываются использующееся отношение (Relationship), метка (Label), опция, указывающая на обязательность наличия объекта (Require this relationship) и для поля с несколькими значениями указывается номер значения, определяющего отношение (Delta).

рис 4
В блоке Arguments определяются аргументы (и способы их обработки), принимаемые и обрабатываемые видом. Аргументы, добавляемые в URL-адрес страницы вида (к адресу добавляется символ «/», после которого указывается значение аргумента) позволяют динамически изменять способ представления информации видом. Если для вида выбран в качестве способа представления блок, то он не может получать аргументы из строки URL-адреса, поэтому, если в этом случае необходимо использование аргумента, его нужно указывать в поле Default argument. Обычно аргументы используются для того, чтобы отобразить вид только для определённого объекта, пользователя или категории (термина) классификатора, т.е. обычно аргументы используются в качестве своеобразных фильтров с переменными параметрами.
При добавлении новых аргументов (кнопка со знаком «+») выбираются необходимые аргументы и затем для каждого из аргументов задаются следующие параметры:
В блоке Fields добавляются поля, которые должны содержаться в создаваемом виде. В этих полях отображается соответствующая (в зависимости от выбранных полей) информация, содержащаяся в объектах, добавленных на сайт. Поля используются для того, чтобы отобразить только выбранную часть информации, содержащейся в объектах, поэтому если стилем форматирования вида определено отображение целых объектов, определение полей в блоке Fields не используется. После нажатия на кнопку с плюсом нужно выбрать тип поля. Для выбранных полей можно выбрать используемое отношение (Relationship), метку поля, показываемую при отображении поля (Label), запрет на отображение поля (Exclude from display), способ отображения (Display type), разделитель, если выбрано отображение с разделителем (Separator), текст, отображаемый при пустом списке (Empty list text).
В блоке Sort criteria можно добавить параметры сортировки содержания вида. Нужно нажать на кнопку со знаком «+» и выбрать условия для сортировки. Затем для этих условий указывается восходящий (Ascending) или нисходящий (Descending) порядок. Фильтры (блок Filters) позволяют установить дополнительные ограничения на количество отображаемой в виде информации. С помощью кнопки со знаком «+» выбираются аргументы условий, для них указывается используемое отношение (Relationship), условный оператор (Operator), тип значения, с которым сравнивается аргумент (Value type) и значение, с которым сравнивается аргумент (Value). Фильтр можно сделать доступным для изменения пользователями, если воспользоваться кнопкой Expose (показать).
Управление видами
На странице Administer | Site building | Views | Import можно импортировать вид. Для этого нужно указать наименование вида (View name) и его код (Paste view code here).
На странице Administer | Site building | Views | Tools выбираются дополнительные инструменты отображения видов:
— опция позволяет при предварительном просмотре вида показывать SQL-запрос, генерируемый видом, непосредственно перед видом, а не после него, как при отключённой опции.

рис 5
На странице Administer | Building site | Views | Tools | Bulk export осуществляется множественный экспорт. После нажатия на кнопку Export (экспорт) на странице отображается в нескольких полях код всех выбранных видов.

рис 6
На странице Convert можно конвертировать виды, созданные в предыдущей версии модуля Views, в формат, используемый в текущей версии.
Стандартные виды
После подключения пакета модулей Views к Drupal с Ubercart в системе присутствуют следующие виды (их удобно использовать для создания модифицированных видов):

рис 7
Примеры создания видов
Для примера, создадим вид, отображающий перечень товаров с дополнительным столбцом для раздела каталога.
Клонируем вид uc_products (Clone). Указываем в поле View name название нового вида, например, uc_products_m и нажимаем на кнопку Next (далее). Переходим к параметрам способа отображения Page и в блоке Page settings (настройки страницы) изменяем путь (Path) с products на products_m. В пункте Menu укажем Normal menu entry (обычный пункт меню), задав в качестве названия пункта меню (Title). В блоке полей (Fields) добавим (кнопка с символом «+») Taxonomy: Term (термин классификатора). В качестве метки (Label) укажем Раздел каталога и свяжем термины с их страницами (опция Link this field to its taxonomy term page).
Использование отношений рассмотрим на примере вида comments_recent при страничном (Page) способе представления вида. В блоке отношений (Relationships) выбрано отношение Comment: Node. Это отношение используется при формировании поля (блок Fields) Node: Title. В строке этого поля на странице последних комментариев сначала отображается текст, указанный в поле Label, а затем наименование объекта, к которому относится комментарий, и это наименование является ссылкой на соответствующий объект. Также отношение используется в фильтре Node: Published or admin для проверки является ли объект опубликованным или пользователь является администратором.

рис 8
Создадим вид для отображения списка пользователей по ролям.
1. Создадим новый вид (Add) и укажем для него имя (View name) users и категорию (View tag) Пользователи. В качестве категории содержания, которое должно отображаться в виде (View type) выбираем User. Нажимаем на кнопку Next (далее).

рис 9
2. На странице редактирования параметров вида в первой колонке выбираем в списке над кнопкой Add display пункт Page и нажимаем на кнопку Add display (добавить способ отображения).

рис 10
3. Укажем путь для страницы вида. Для этого в блоке Page settings (настройки страницы) выберем параметр Path (путь) и укажем в качестве пути, например, users_page. После этого нужно нажать на кнопку Update (обновить).

рис 11
4. Теперь добавим ссылку на страницу вида в навигационное меню. Для этого в блоке Page settings выберем параметр Menu (меню) и укажем для него опцию Normal menu entry (обычный пункт меню). Укажем заголовок (Title) Пользователи. В качестве родительского меню (Menu) должно быть выбрано навигационное (Navigation). «Вес» (Weight) можно не указывать

рис12
5. Добавим на создаваемую страницу возможность просмотра следующих и предыдущих страниц, если список не умещается на одной странице. В блоке основных настроек (Basic settings) для параметра Use pager (использование навигации по страницам) выбираем полный вариант навигации (Full pager) и нажимаем на кнопку Update default display (обновить установки по умолчанию).

рис 13
6. Теперь добавим поля, которые нужно отображать. В блоке Fields (поля) нажимаем на кнопку с символом «+». В открывшейся форме выбираем в списке Groups (группы) пункт User. Далее отмечаем опции User: Active (показывается, активен пользователь или заблокирован), User: Edit link (ссылка на страницу редактирования учётной записи пользователя), User: Last access (показывается, когда пользователь последний раз осуществлял какие-либо действия на сайте), User: Name (имя пользователя), User: Roles (роли пользователя), User: Uid (номер учётной записи пользователя). После нажатия на кнопку Add (добавить) последовательно будут показаны формы с дополнительными настройками опций. Для каждой опции оставляем стандартные значения. С помощью кнопки с разнонаправленными стрелками в блоке Fields можно расположить добавленные поля в нужном порядке. После добавления полей внизу страницы редактирования вида будет доступен предварительный просмотр редактируемого вида. Если вид не показывается автоматически, то можно воспользоваться кнопкой Preview (предварительный просмотр).

рис 14
7. Преобразуем получающийся вид в таблицу. Для этого в блоке основных настроек (Basic settings) изменим стиль представления (Style), выбрав в качестве стиля таблицу (Table). Далее в показываемой форме настроек таблицы (Page: Style options) включаем для всех возможных полей возможность сортировки (Sortable) и сохраняем настройки (Update default display).

рис 15
8. Для того чтобы показать только тех пользователей, которые осуществляли действия на сайте в последние пять минут, добавим фильтр. Для этого в блоке Filters (фильтры) нажимаем на кнопку с символом «+». Затем выбираем фильтр User: Last access и добавляем его (Add). В форме Operator (оператор) выбираем опцию Is greater than (менее чем), в поле Value type (тип значения) выбираем An offset from the current time (отклонение от текущего времени) и указываем значение отклонения (Value), равное пяти минутам: -5 minutes. Затем сохраняем настройки (Update).

рис 16
9. Добавим возможность просматривать информацию по одному пользователю, указывая в адресе страницы его имя. Для этого добавим аргумент (блок Arguments) User: Name. В настройках аргумента в поле Title (заголовок) указываем %1 для того, чтобы первый аргумент в URL-адресе страницы вида воспринимался бы как имя пользователя. Остальные настройки не меняем и нажимаем на кнопку Update (обновить). Теперь, если нужно просмотреть информацию по пользователю, чьё имя, например, example, к URL-адресу страницы вида нужно добавить /example . Для просмотра вида полностью, к URL-адресу можно добавить аргумент /all (это значение аргумента указано в поле Wildcard в настройках аргумента) или не добавлять аргумент. Если добавляются ещё аргументы, то в URL-адресе их значения указываются через символ «/».

рис 17
10. Завершив редактирование настроек вида, сохраняем его (кнопка Save). Получившийся вид можно просмотреть по ссылке Пользователи в меню навигации.

рис 18
Использование CSS для видов
Пакет модулей Views использует для всех своих элементов классы CSS, что предоставляет возможность тщательной настройки отображения каждого вида. Обычно каждый вид при формировании страницы заключается в тег <div class=“view view-newview”></div> (здесь имя вида “newview”). Таким образом, в файле каскадных таблиц можно изменить представление как всех видов (div.view{}), так и конкретного вида (div.view-newview{}).
По умолчанию, общий шаблон видов определяет следующие классы (изменить представление, например, заголовка вида в файле CSS можно с помощью директивы div.view-newview div.view-header{}):
Для управления полями видов необходимо пользоваться их системными идентификаторами (для каждого вида эти идентификаторы (ID) можно увидеть на странице информации о теме, ссылка на которую расположена в основных настройках: Basic settings | Theme: Information). Если в идентификаторе (ID) используется знак подчёркивания «_», то в файле стилей нужно использовать вместо него знак минуса «-». Так, например, если используется поле со ссылкой на страницу редактирования объекта (в частности, User: Edit link), для которого на странице информации о теме указано ID: edit-node, то в файле стилей CSS используется директива .view-newview .views-edit-node{}.
Комментарии
Even if you're able to
Even if you're able to complete course assignments, that will not mean that your assignments are the best. Only professional writers are able to cope with difficult assignments easily. Students do clever decisions when buy custom papers.
Being a college student, you
Being a college student, you have to reach good rates and improve your good name. That won't cost a lot of money when you turn to the custom essay services. Moreover, it should get you good benefits.
No matter what business you
No matter what business you have got, small or great, you will surely need your site to have a good publicity. You can gain that utilizing the manual directory submission services with submit options.
А рисуночки где?
А рисуночки где?
Все подробно! Спасибо!
Все подробно! Спасибо!