Вы здесь

Views 1: 20 шагов с модулем Views

Сначала скажем простые вещи. Вид — это СПИСОК! Список, список, список. Список всего на вашем сайте. Мы хотим использовать модуль Views, потому что мы не все довольны тем способом которым Drupal строит списки «из коробки» и мы хотим настроить наши списки.

Установите модуль Views. Распакуйте всё в ваш каталог модулей, затем просмотрите раздел модулей в меню администрирования и включите модули Views и Views UI. Вот и всё.

Включите модуль для пользователей которым вы хотите разрешить создавать «виды» на странице Administer → User management → Access control. После этого идите к пункту меню Views в Administer → Site building. Пугающий вид, правда? Нет, не правда!

Есть много вещей, которые вы можете сделать с Views, которые идут вне этого интерфейса конфигурации, но мы пока это оставим. Если вы честолюбивы, загляните сюда: drupal.org/node/47412. Вы (да, ВЫ) может импортировать некоторые из этих законсервированных «видов», используя вкладку Import.

Итак, простое упражнение. 20 шагов к счастью с модулем Views. Давайте создадим «вид» (список, помните?), который будет отображаться в блоке. Справа на сайте drupal.org вы можете увидеть блок, который говорит вам: «Новые темы форума», и перечисляет названия. Давайте построим «вид», который создаёт вид списка подобный этому. В общем ломанулись: Administer → Site building → Views.

1. Нажмите на вкладку Add.

2. Впишите название в поле Name: LatestFrontPageItems (пробелы в это поле вводить запрещено, также как давать русские названия).

3. Ничего не отмечайте в поле Access, потому что мы хотим, чтобы каждый мог видеть наш крутой блок.

4. Напечатайте описание которое будет показываться на странице Administer → Site building → Blocks: Последние статьи на главной странице.

5. Затем смотрим секцию Page. Мы не делаем страницу (но страницы которые делает Views, тоже крутые!) — мы делаем блок, поэтому оставляем этот раздел в покое.

6. Теперь подайтесь в секцию Block и отметьте поле Provide Block, потому что мы хотим, чтобы Views показал нам всё это как блок для нашего «вида».

7. В поле Title впишите: Крутой блок, а?.

8. Хотите показать пять пунктов в вашем блоке? Так введите 5 в поле Nodes per Block. Nodes — это типы документов которые будет показывать этот блок, например такие как story или blog entry. Мы хотим чтобы пункты блока отображались как заголовки этих документов (не таблица или список краткого содержания или большой список полного содержания документов или чего-то там ещё), таким образом выберем в поле View Type значение List View. Можете потом побаловаться этой опцией, чтобы увидеть то, что делает это поле.

9. Если вы хотите, чтобы ваш блок показывал предварительный просмотр страниц этого самого «вида», то поставьте птичку в поле [More] Link?. Мы не будем делать страницу для этого «вида», таким образом мы не будем делать это. Вы можете сделать и страницу и блок «вида» сразу для того же самого «вида».

OK, давайте теперь устроим перерыв. Что такое «вид»? Попробуйте переварить это: «вид» — только способ смотреть на все документы. С реальными объектами в этом мире вы можете иметь много «видов». Вы можете смотреть сверху, снизу, со стороны и т.д. Вы можете смотреть на вещи через фильтры, которые показывают только определённые спектры света. Вы можете разглядывать их вблизи или издалека.

Обзор содержания вашего сайта, используя модуль Views — та же самая «весчь». Как вы хотите смотреть ваши документы? Как список, который содержит заголовки документов, затем даты, потом время публикации? Вы хотите смотреть на них как на таблицы или как на стандартный список пунктов? Вы хотите чтобы они были отсортированы в алфавитном порядке, начиная с последнего или начиная с первого? Каждый из этих способов просмотра ваших документов может быть просто «видом». Таким образом мы строим блок, который покажет нам отдельный «вид» содержания на нашем сайте.

10. Так, мы находимся в секции Block управления модулем Views и мы только что не собирались оптичивать поле [More] Link?, потому что мы не будем генерировать страницу для этого нашего «вида». Теперь мы нажимаем Header. Вы хотите поместить пару слов сверху блока? Используйте раздел Header. Отметьте Use Page Header и напечатайте в поле: Вот это вот — мой самый крутой блок. Нет сомнений, что вы от него в восторге. Текстовое поле может обработать любой вид ввода, включая теги HTML и вероятно картинки, хотя я не пробовал это. Теперь всё изумительно.

11. Закройте секцию Header и откройте секцию Footer. Та же самая история и здесь. Давайте вставлять нижний колонтитул. Отметьте поле Use Page Footer и напечатайте в текстовом поле: Спасибо за смотрение на мой крутой блок. Он — мой первый.

12. Закройте раздел Footer и откройте раздел Empty text. Эта секция на случай, если «вид» не сгенерирует никаких результатов. Здесь можете высказаться по такому печальному поводу, напечатайте в поле что-нибудь вроде: Этот «вид» не вид, или: Зайдите попозже для лучшего «вида», но мы собираемся удостоверяться, что есть некоторое содержание для нашего «вида», выбрав большой раздел содержания, так что не беспокойтесь на этот счёт. Только помните об этом, может случиться, что вы будете нуждаться в этом разделе.

13. Закройте раздел Empty text и отправляйтесь в раздел Fields. Мы нуждаемся в некоторых здешних полях или наш блок будет пуст, и нам будет жаль, что мы не поместили ничего в Empty text. (О! Между прочим вы можете сохранить ваш «вид» и вернуться к нему позже если вы волнуетесь о вашей шестимесячной дочери, стучащей по клавиатуре молотком). Поля — это только части вашего содержания которые вы хотите отобразить в вашем «виде». Таким образом те значения по умолчанию, которые бросаются вам в глаза, — хорошее место, чтобы начать. Нажмите на разворачивающийся список Add Field и выберите Node: Title. Оно означает поле заголовка вашего документа, т.е. название. Просто название. Node — причудливое слово для части содержания. Таким образом мы хотим добавить это к нашему «виду», потому что хотим, чтобы наш список содержал заголовки наших документов. Нажмём кнопку Add field. Теперь вы имеете поле для вашего «вида». Посмотрите на весь список, справа от названия поля, который вы можете настраивать.

Когда вам станет лучше, вы можете побаловаться с этими опциями, но сейчас, давайте оставим всё как есть и не будем ничего трогать.

14. Закрываем секцию Fields, пропускаем секцию Arguments (обязательно попробуйте её позже) и идём к Filters. Пока мы сказали «виду», что мы хотим список документов с заголовками, но мы не хотим список ВСЕХ документов на нашем сайте. Мы хотим кое-что более полезное. Давайте делать список всех документов которые были опубликованы на главной странице. Таким образом, независимо от того где люди находятся на нашем сайте, они могут видеть список документов главной страницы. Итак, нажмите на список фильтров и выберите Node: Front Page и затем нажмите кнопку Add Filter.

15. Пропустите Exposed Filters и выберите Sort Criteria. Мы хотим чтобы наши документы были перечислены в нашем блоке и сначала шли последние опубликованные документы. Так выберите Node: Created Time. Теперь, когда вы нажмёте кнопку Add Criteria, сверху появятся дополнительные поля для выбора. В колонке Order выберем Descending, так как мы хотим отсортировать свой список по убыванию.

16. Сохраните ваш «вид»!

17. Теперь, перейдите по ссылкам Administer → Site building → Blocks и вы увидите ваш блок «вида» перечисленный в списке неактивных блоков. Включите его и поместите туда, куда вам будет угодно. В Drupal 5.1 вы можете поместить его в большое количество мест, но для этого упражнения, поместить его в правую колонку.

18. Сохраните вашу конфигурацию блоков и ваш новый блок «вида» обнаружится справа. Обратите внимание, что список содержит заголовки статей с главной страницы перечисленные по убыванию начиная с верха блока. Отпад, да?

19. Теперь, возвратитесь к Views: Administer → Site building → Views и начните баловаться с другими установками для вашего блока, который вы только что сами создали. Поменяйте фильтры, добавьте аргументы, добавьте поля, уберите их снова. Каждый раз когда вы сохраняете ваши изменения, блок который вы создали справа будет реагировать на изменения. Это правильный путь чтобы научиться создавать «виды» и изучить то, что является возможным. Думайте о том, что вы можете сделать со страницами! О, и в страницах вы можете установить путь, например ваш_сайт/my/cool/views/page, и вы можете даже поместить ссылку на вашу крутую страницу «вида» в меню прямо из интерфейса настройки «вида». Это так изумительно. Это Drupal 5.1.

20. Дуйте за квасом и начинайте квасить, потому что теперь вы — на правильном пути к пониманию Views («Видов»), и вам нужно немного времени, чтобы поразмышлять над всеми возможностями.

Комментарии

Изображение пользователя mixa

Спасибо, отличная статья

Изображение пользователя kr

Помогло, спасибо!!!

Изображение пользователя Nekech

Пасиба большое )
До прочтения этой статьи вобще не понимал как этот views работает =) теперь все отлично!

Изображение пользователя Evgenij

Я с этим Views, запарился. Хоть после этой статьи, кое-что понятно стало.

Изображение пользователя Анонимно

Вся пресловутая сложность вхождения в Друпал по большому счету кроется в используемой девелоперами терминологии. Все, что можно обозначить привычными терминами (обычными русскими словами, интуитивно понятными, хотя бы человека с высшым техническим образованием) перевернуто с ног на голову. И вместо логики работы движка неофитам приходится въезжать в логику обозначений и понятий. Ну, разве сложно таксономию назвать классификатором, а термин рубрикой? Нет, но при слове таксономия в голове у людей ни чего кроме тумана, а при слове классификатор нарисовалась иерархическая структура - как минимум дерево. Тоже и с видами.

Изображение пользователя sabonim

Вхождение в любую сколько-нибудь сложную CMS затруднителен для пользователей. Въехать в логику - прочитать то что написано в хелпе из модуля help (встроенного). У любой CMS есть своя терминология, посмотрите хотя бы на форумы поддержки Joomla и других систем. А тот кто хоть с одной системой как следует разобрался, с другими уже проблем не будет. Идея-то одинаковая. У всех есть разделы и рубрики. У Drupal есть свой Views - огромное его преимущество, позволяющее настраивать вывод контента как вашей душе угодно - так почему бы не прочитать один раз хелп по нему чтобы потом пользоваться его преимуществами, он ведь бесплатно для вашего блага создан. Так что я думаю, жаловаться на терминологию не стоит. В любой области своя терминология, к которой надо просто привыкнуть.

Изображение пользователя Анонимно

Drupal конечно не CMS, точнее CMS одно из решений Drupal.
Drupal - api, мощнейшая платформа для реализации всевозможных парадигм управления и систематизации абстрактных объемов информации. И уже только поэтому ориентирован не на неофита, а профессионала. Однако, поверх Drupal прикрученна cms, которая призвана упростить работу с платформой, ориентируясь в общем то уже на другую группу пользователей. Вот она то могла бы быть гораздо более доброжелательной по отношению к неофитам и использовать более ясную и интуитивно понятную терминологию.

Изображение пользователя Анонимно

Впервые здесь. Думается хороший сайт! Много полезной информации! Как раз попал на Вьюс, то что мне надо. Спасибо!

Изображение пользователя sanek

А если я хочу поместить вид и в содержание и в правую колонку, нужно делать два одинаковых вида? Ведь выбрать можно только что-то одно.

Изображение пользователя Анонимно

Вот только назвал бы view не дословно вид, правильнее было бы сказать представление, по аналогии с SQL

Изображение пользователя Виталий

Прошу помочь мне и наверное многим другим. Мне нужно сделать так. чтоб появился новый тип документа, что то типа страницы или заметки в стандартном наборе. И чтоб содержимое этого документа отображалось там где я укажу. С помощью модуля views у меня не выходит это сделать. Помогите плиз. Напишите как это реализовать.

Изображение пользователя Анонимно

Супер. То что доктор прописал.

Изображение пользователя Konstantin

Пол интернета перерыл так и не нашел мануал по views на русском языке. Спасибо помогли

Изображение пользователя Анонимно

Добрый вечер уважаемые, а где вообще про работу с этим модулем почитать можно и про модуль cck если можно пожалуйста

Изображение пользователя illusions

Как раз начал изучать Друпал, смотрел подкаст с сайта shvabrashvabr.ru, с вьюхами понял, но есть один момент - у меня юзеру выводиться фильтр, в котором он может выбирать, кк в поиске, что смотреть. А я не могу убрать этот фильтр.

Изображение пользователя Botmaster

Было бы интересно почитать про этот модуль для 6-й версии.

Изображение пользователя Анонимно

промт не рулит =/

Изображение пользователя sweedbes

Крутая статья! Спасибо за труд!

Пошел за квасом :)

Изображение пользователя Lollo4ka

Такие бы 20 шагов для версии 6. 5 отличается слишком сильно чтобы разобраться в этом(((

Изображение пользователя Анонимно

Честно говоря для людей,которые только начали изучать друпал и такой сложный модуль Views-это не самое подробное руководство для начинающих. Здесь гораздо подробнее и лучше все описано.Но все равно спасибо автору этой статьи за его труд.

Изображение пользователя Анонимно

спасибо автору за вразумительно написанный мануал!

Изображение пользователя sslam

Спасибо за урок, тема разжевана до конца. Вы можете еще подсказать, как можно сделать Вид для уже существующей страницы-подшивки, чтобы ссылки заменить анонсами?
Заранее благодарен за любую информацию.

Изображение пользователя Анонимно

У меня версия 6.16 - Ни одного поля описанного в статье не нашёл - Всё по другому - Вообще безполезная статья в таком виде как есть -

Изображение пользователя Анонимно

у меня друпал 6.15
хоть вьюсы и русифицированы, оооочень помогло!
псб Огромное!

Изображение пользователя Дима

У меня 6,19 и у меня поля не совпадают и для меня к сожалению статья оказалась бесполезной. Было бы не плохо обновить описание. Хотя я к тому времени наверно уже методом тыка разберусь. :(

Изображение пользователя Илья

Жесть какая,
описан хороший пример использования модуля Views. Осталось только перевести на русский язык ;)

Изображение пользователя Имя

> поле Nodes per Block.
> поле View Type

Не нашел эти поля, скажите, пожалуйста, где они расположены?

Изображение пользователя Имя

Вот, нашел где задается тип tagadelic :

Edit view Temp_block
mysite.ru/drupal/admin/build/views/edit/Temp_block

Блок Display the view as a block.
Basic settings
Название: Блок
Заголовок: Нет
Change settings for this style
Style: Tagadelic