Кто что не понимает во views2 задавайте вопросы, по пробую ответить.
вопросы принимаются как создать какой-то вид, что значит та или иная кнопочка и тд.
топик добра мать его...
ОК, я уже спрашивал на сайте, мне не ответили, поэтому спрошу еще раз: помогите настроить вид всех материалов с участием пользователя, т.е. как здесь на сайте в трекере (материалы с моим участием). Кажись уже все возможные варианты перепробовал и ничего не вышло Что ставить в полях: фильтры, аргументы и релэйтиншипс?
ОК, я уже спрашивал на сайте, мне не ответили, поэтому спрошу еще раз: помогите настроить вид всех материалов с участием пользователя, т.е. как здесь на сайте в трекере (материалы с моим участием). Кажись уже все возможные варианты перепробовал и ничего не вышло Что ставить в полях: фильтры, аргументы и релэйтиншипс?
в аргументах: Материал: User posted or commented, также в настройках этого аргумента можно установить
Provide default argument = User ID from logged in user
Не получается: выводит все записи, для проверки создаю запись одним пользователем, захожу под другим и у него эта запись тоже есть хотя в ней он не участвовал.
"Также в настройках этого аргумента можно установить Provide default argument = User ID from logged in user"
Это как я понимаю ставиться в поле: Action to take if argument is not present. У меня есть только User ID from UR, а не User ID from logged in user.
Т.е. как я понимаю проблема в том, что аргумент не представлен и поэтому выводит все материалы. (Action to take if argument is not present выставил Display all values)
И еще аргумент Материал: User posted or commented имеет вот какое пояснение: Display comments only if a user posted the node or commented on the node, т.е. он выводит коменты?
Да, еще подумал - а то, что у меня выключен модуль трекера не имеет значения? Просто вкладка "Следить" в профиле мне не нужна.
у меня простой вопросик
экспоз фильтры, не соображу, включить включил, а где настроить (это в 6-ке)
у меня страница: список названий нод, фильт по типу и по термину таксономии.
Хочу сделать "поиск" по полю заголовок
у меня простой вопросик
экспоз фильтры, не соображу, включить включил, а где настроить (это в 6-ке)
у меня страница: список названий нод, фильт по типу и по термину таксономии.
Хочу сделать "поиск" по полю заголовок
ну как где настраивается, в том же месте где и создаешь
после нажатия Expose появляются доп. настройки, и все.
выше самого списка будет форма, правда если в Осн. настройках стоит Exposed form in block: Да
то надо включить дополнительно блок, он появится.
Как сделать сложный поиск вьюсами (если возможно)Возьмём классический пример-анкета сайта знакомств http://loveplanet.ru/a-expsearch/[/quote]
ну обычный фильтр я думаю знаете как делать, например по сск полям. проблема в том что селектбоксы одни.
но есть модуль Views Checkboxes и порт подл 6ку тут
заменяет на чекбоксы и радиокнопки.
как вывести на главную все записи одного типа контента в виде картинки и краткого описания?
создать вид, со страницей указать путь допустим front,
Row style: Материал, в доп. настройках указать Display only teaser. А картинку темизировать через node.tpl.php
в фильтрах установить Материал: Тип
Делал все как здесь описано (views 2.3, Voting API 2.0-rc2, Vote Up/Down betta-4) и таких настроек почемуто нет, точнее сома форма есть но нет в ней karma_points.
И второй вопрос как с помощью views вывести суммарное количество голосов за посты, принадлежащие этой группе?
Делал все как здесь описано (views 2.3, Voting API 2.0-rc2, Vote Up/Down betta-4) и таких настроек почемуто нет, точнее сома форма есть но нет в ней karma_points.
И второй вопрос как с помощью views вывести суммарное количество голосов за посты, принадлежащие этой группе?
1) karma_points нет, тк как нет user_karma
2) пока такого функционала нет
(2ая попытка)
Расскажи про relationships опции, для чего они нужны?
нужны для связи разных таблиц в видах, об это хорошо впринципе написано здесь.
автор пишет что поидее для каждого вида должны бить прописаны relationships, но тк views1 был бе этого функционала уже было поздно что-то переделывать. сейчас есть базовое отношение( когда создаешь вид там указывашь нода, термин ревизия и тд)
допустим выбрал нода(материал) надо сделать вид название ноды + её рейтинг из voting api, вот тут надо указать
relationship чтобы связать таблицу с нодами с 2мя таблицами отвечающими за рейтинг, тогда в полях появятся несколько новых полей и их можно использовать.
другой пример:
при создании установили Пользователь, у меня есть relationship Материал: Content Profile
с помошью него у меня будет базовая таблица users но я также смогу выбирать все что относится к ноде связанной через
Content Profile.
фишка вобщем в том что например файл может быть связан с пользователем, но не связан с нодой
или каждая ревизия одной ноды имеет авторство разных пользователей и тд
Есть вид выводящий скажем заголовок, категорию и оценку (саму оценку и количество голосов, в виде 7.25/24, склеить два поля в один столбец темизировав табличный вьюс не проблема), представление табличное, нужно сделать чтоб при нажатии на заголовок оценки сортировка происходила сначала про оценке а потом по количесту голосов
Есть вид выводящий скажем заголовок, категорию и оценку (саму оценку и количество голосов, в виде 7.25/24, склеить два поля в один столбец темизировав табличный вьюс не проблема), представление табличное, нужно сделать чтоб при нажатии на заголовок оценки сортировка происходила сначала про оценке а потом по количесту голосов
penexe спасибо, это логичное решение, но я не достаточно полно описал задачу, критерии сортировки уже используются в порядке: серия->номер серии->средняя оценка->количество голосов, для того чтобы когда сортирую по названию серии следом шла сортировка по номеру в серии, то есть сортировка по оценке уже не будет работать правильно т.к. приоритет у серии и номера (они выше по списку). В общем нужно чтобы при сортировке по оценке критерии серия и номер как бы удалялись (а лучше чтоб менялись их приоритеты), а при сортировке по серии удалялись критерии оценок. То есть нужно как-то динамически перехватывать (наверно в своем модуле) поле сортировки и менять на лету приоритеты критериев, вот
По первому скрину, птичка "override normal sorting..." должны быть снята для достижения правильного результата.
А с объединением полей и правда затупил, я их темизацией склеивал Хотя в моем случае без темизации все равно не обойтись, таблица у меня не обычная
Как можно отследить причину того что не появляеться блок созданный с помощью Views?
в превью внизу всё отображаеться - "Empty text" задал, но блок нигде не появляеться, в блоках регион показа ему задал.
[решено
просто в поле аргументов забвл написать чтобы он показывал "Empty text" в случае если аргументов нет
Сам недавно столкнулся с выводом извратного рейтинга в таблице пользователей, оказалось нужный relationships отсутствовал, пришлось юзать SQL )))
Засим вопрос: penexe, ты не встречал внятных howto по написанию субплагинов к views? В частности организация кастомного relationships.
да рейтинг юзеров, вобще типовая задача, тоже маялся с SQL, думал в views сложно будет, пока сегодня не глянул разобрался маленько результат чуть выше в коментах
views я пока сам изучаю методом тыка и просмотра дефолтных хэндлеров из папки views а также контриб модулей
вот тут в группе можно кое чего почерпнуть http://groups.drupal.org/views-developers
Задача следующая: список пользователей с полями профиля, плюс количество комментариев, ими оставленными, плюс рейтинг. Рейтинг высчитывается так: за каждый комментарий на сайте можно проголосовать (vote_up_down), соответственно рейтинг - кол-во очков за комментарии пользователей.
Твой votingapi_bonus.zip ещё не смотрел, обязательно изучу.
Задача следующая: список пользователей с полями профиля, плюс количество комментариев, ими оставленными, плюс рейтинг. Рейтинг высчитывается так: за каждый комментарий на сайте можно проголосовать (vote_up_down), соответственно рейтинг - кол-во очков за комментарии пользователей.
Твой votingapi_bonus.zip ещё не смотрел, обязательно изучу.
кол-во комментариев хм.. интересно
кстати еще хорошо помогает
<?php function hook_views_data_alter(&$data) { dpm($data); } ?>
Да, в лоб - можно установить UserStats и взять оттуда. С извратами может и во views можно будет, но это уже будет не список пользователей, а комментов скорее всего.
Вообще, надо будет хорошенько проштудировать мануалы - чую это всё легко через модули решить. На SQL-то один JOIN - и готово.
penexe,не могу найти во вторых вьюсах поля от Imagecache и VotingAPI.Подскажите,где искать?
от imagecache нет полей, есть от cck imagefield, ищите там где все поля от cck
для VotingAPI надо добавить сначала relationship Материал: Voting results
2 - ID словаря моего.
Таким образом хотел вывести в блоке ноды, которые прикреплены к тому же терму, что и нод, на странице которого находимся. Да не выходит что-то - выводит empty text даже там, где точно есть соответствующие ноды, не пойму в чем ошибка?
2 - ID словаря моего.
Таким образом хотел вывести в блоке ноды, которые прикреплены к тому же терму, что и нод, на странице которого находимся. Да не выходит что-то - выводит empty text даже там, где точно есть соответствующие ноды, не пойму в чем ошибка?
В Action to take if argument is not present: выбрать Provide default argument PHP code
И туда вставить
2 - ID словаря моего.
Таким образом хотел вывести в блоке ноды, которые прикреплены к тому же терму, что и нод, на странице которого находимся. Да не выходит что-то - выводит empty text даже там, где точно есть соответствующие ноды, не пойму в чем ошибка?
В Action to take if argument is not present: выбрать Provide default argument PHP code
И туда вставить
Попробовал, не выводит, но в этом случае и эмпти текст не выводится, вообще пусто.
@ Dan (если это мне) думаю, что это стандартная задача для вьюза, во вьюзе1 легко с помощью такого аргумент хендлин кода решал, а тут не выходит чего-то.
У меня такая задачка. Есть тип материала "Фото" (c полем cck imagefield) и словарем "Альбом". Возможно ли с помощью views2 на одной странице (например, mysite.ru/gallery) сделать выборку:
Альбом №1 (термин словаря) - три последние/первые/случайные ноды
Альбом №2 (термин словаря) - три последние/первые/случайные ноды
...
Альбом №n (термин словаря) - три последние/первые/случайные ноды
Автозаполняемые зависимые значения.Например,есть список городов,в теринах таксономии или просто как поле с множественными значениями в типе контента.Этот список городов выводим в виде развёрнутого фильтра.Юзер выбирает город,ему подгружается список областей.Можно ли ?
@ Dan (если это мне) думаю, что это стандартная задача для вьюза, во вьюзе1 легко с помощью такого аргумент хендлин кода решал, а тут не выходит чего-то.
Нет, не тебе, но рад, что работает
Это для vitvas.
Для тебя ничего другого, кроме как решение от penexe посоветовать не могу. Если не работает, попробуй вместо этого кода вставить просто "return 123;", где 123 - термин, по которому точно должно выводиться что-то. Если не работает, - ошибка настройки views, копай там, если работает - ошибка в коде, проверь его.
2vitvas: не дублируй пожалуйста сообщения в форуме. Можно было просто дать ссылку.
2 Dan: Спасибо за подсказку решения, завтра буду проводить испытания.
(но вопрос, можно ли реализовать такую задачку исключительно настройками views, остается актуальным, интересно же)
А за дубль, конечно, извините, но мне показалось нелогичным в обсуждении "задай вопрос" написать "мой вопрос здесь".
Автозаполняемые зависимые значения.Например,есть список городов,в теринах таксономии или просто как поле с множественными значениями в типе контента.Этот список городов выводим в виде развёрнутого фильтра.Юзер выбирает город,ему подгружается список областей.Можно ли ?
На данный момент интеграция hierarchical select с views для 6-ой версии отсутствует, разработчик модуля столкнулся со сложностями, которые не смог решить пока.
penexe, спасибо, все работает, была моя ошибка.
А теперь хочется сделать немного посложнее, а именно:
Сейчас выводится на странице с нодом блок с несколькими нодами, которые прикреплены к тому же терму из данного словаря(а именно 2).
Хочется теперь добавить условие, чтобы nid у выводимых нодов был больше, чем у нода, на странице которого находимся.
Можно конечно добавить аргумент node:nid, в хендлин коде вставить опять определять по дефолту из адреса страницы с текущим нодом равный его nid и сделать модулек с хуком
<?php
hook_views_query_alter(&$view, &$query) {
if($view->name == 'MY_VIEW') {
$query[0]['clauses'][1(или какая цифра будет)] = "node.nid > '%s'";
}
}
?>
но как-то это не очень красиво, есть ли более красивое решение?
Спасибо, penexe, все работает по этому способу, за исключением одного - почему-то теряется ограничение на кол-во выводимых нодов в таком блоке (у меня выставлено 2), а выводятся все ноды, у которых nid < (я вывожу с оператором <) данного. Пробовал добавить дополнительно такие записи:
<?php
$view->display['block_1']->handler->options['items_per_page'] = 2;
// или так
$view->display['block_1']->display_options['items_per_page'] = 2;
?>
Но не помогло.
Странно, в настройках вьюза указано выводить по 2 нода, а проверил, оказывается ограничение все таки вьюз делает, но почему-то 10 нод, я нигде ему не указывал такого, откуда-то по дефолту тянет, что-ли? Как с этим бороться?
всем Здрасти.
У меня такой вопрос. Есть нода относящаяся к двум словарям Рубрика и Выпуск. Как мне получить в views термины из словаря Рубрика в нодах которые соотвествуют и термину из словаря Выпуск.
То есть есть нода с терминами Новости и №1, как мне вытащить в блок термины из первого словаря.
За тяжелую формулировку вопроса сорри.
да, по ссылке указанной в страничном вьюсе аякс у листалки работает.
А мы встраиваем страничный вьюс в страницу? Может попробовать сделать блок, посмотреть, что он нормально работает (во вьюс-предпросмотре и в стд. блоках друпала), а потом пытаться вывести это программно.
А мы встраиваем страничный вьюс в страницу? Может попробовать сделать блок, посмотреть, что он нормально работает (во вьюс-предпросмотре и в стд. блоках друпала), а потом пытаться вывести это программно.
Вьюс не не страничный. Страничный вьюс я не встраиваю, он сам выводится по указанной ссылке, и листалка работает корректно. Заморочки начинаются, когда я встраиваю в страницу вид "По умолчанию".
Вьюс не не страничный. Страничный вьюс я не встраиваю, он сам выводится по указанной ссылке, и листалка работает корректно. Заморочки начинаются, когда я встраиваю в страницу вид "По умолчанию".
Ссылку (path) можно указать только у страничного вьюс.
Извините не по теме. К сожалению, Вьюз не использую, но с помощью этого модуля можно исправить баг в модуле Paging - пустые страницы, если имеется одна страница с текстом, то высвечивает и вторую, совершенно пустую. При заполнении большим контентом, например из 12 страниц текста, добавляет еще семь пустых страниц, в итоге высвечивает 19 страниц, где семь просто лишние. Помогите пожалуйста это устранить. Спасибо
Dan,
да, я проверяю на стандартной теме. версия вьюс последняя.
твой вариант работает, но без аякса. если прописывать его в node.tpl.php или в форме при создании ноды - то аякс есть.
2volocuga: views - это список данных одинакового типа, как правило. Ты можешь сделать список профилей - в этом смысл есть, но список полей одного пользователя... - зачем?
(Делаешь view с нужными полями, аргумент - user ID, темизируешь вывод типа материала, который "content profile")
У меня проблема со стилизацией вывода в блок.
Создал тип Expedition, создал в Views новый блок с выводом заголовка и тизера. Поставил фильтр на вывод только Expedition.
Блок нормально работает, но выглядит он как другие блоки, и нет расстояния между записями.
Не подскажете как это делается? Через отдельный файл в папке шаблона?
Извините если туплюю. Но у меня еще один вопрос: Не могу понять как из блока достать переменные которые доступны на той странице в которой этот блок отображается? К примеру в типе содежимого "Пользователь" есть дополнительные поля "Всего сообщений", "Предупреждений" и "Репутация". При создании ноды по типу "Пользователь" в правом сайдбаре нужно вывести блок с помощью views, и в зависимости от параметров "Всего сообщений", "Предупреждения" и "Репутация" указать стабильность пользователя. Помогите плз
И у меня вопрос.
Делаю сайт по обмену.
Есть словарь с предметами для обмена (free tag заполняется во время создания материала). 2 CCK поля (что меняю, что хочу получить), берущие значения из этого словаря.
Собственно вопрос: как сделать в View свободный выбор по этим полям, а не выпадающий список как у меня сейчас?
Если бы словарь был подключен к материалу как обычно, то таких проблем не возникло бы. что делать?
А вот такой вопрос: есть несколько пользователей,у которых в профиле есть поле например "Город".Используется content profile.
На сайте я вывожу где-нибудь в форме поиска ссылку на вид "Пользователи из моего города".У меня напимер горо "Киев" и я хочу найти пользователя ТОЛЬКО из своего города.
В фильтрах есть опции "Равно" или "Не равно" какому-то значению,т.е значение нужно выбирать.Я же хочу просто перейти на страницу вида,где уже всё посортировано(городов может быть очень много разных)
Как сделать?
А вот такой вопрос: есть несколько пользователей,у которых в профиле есть поле например "Город".Используется content profile.
На сайте я вывожу где-нибудь в форме поиска ссылку на вид "Пользователи из моего города".У меня напимер горо "Киев" и я хочу найти пользователя ТОЛЬКО из своего города.
В фильтрах есть опции "Равно" или "Не равно" какому-то значению,т.е значение нужно выбирать.Я же хочу просто перейти на страницу вида,где уже всё посортировано(городов может быть очень много разных)
Как сделать?
проще простого) если у вас список пользователей, то добавляете Relationship Материал: Content Profile
потом в аргументах выбираете нужное поле, сск или там таксономия..
ставите настройки Action to take if argument is not present: Provide default argument
потом Default argument type: PHP Code
ну а тут дело техники
<?php global $user; $node = node_load(array('type' => 'profile', 'uid' => $user->uid, 'status' => 1)); if($node) { return $node->field_gorod[0]['value']; // это для примера } ?>
вроде норм, надо смотреть запрос который получается,
проверять так ли хранятся в ноде значения города
еще, проверь просто указав аргумент в строке просмотра, возможно его надо задавать ввиде цыфры
Доброго времени суток.
Самый главный вопрос. Есть поле "Год"
И я хочу сделать через фильтр в views чтобы можно было выбирать Год от и до
и еще вопрос.
У меня имеется меню
Книги
..жанр1
..жанр2
..жанр3
фильм
..жанр1
..жанр2
..жанр3
Сделал через Hierarchical Select + Exposed Filters. Все работает.
Но если я выбираю "Книги" и не выбираю "жанр*" то мне не выдает все что в "Книги"
То есть надо выбирать именно книгу и жанр. Что есть не удобно.
Как можно сделать чтобы я мог выбрать только "Книги" и мне выдало все что в Книгах есть?
Да поле date.
А какой виджет не можешь подсказать?
Quote:
2) меню? может таксономия?
Да при помощи таксономии.
И еще один вопрос если можно.
Я делаю значит при помощи "Exposed Filters" выборку через таксономию.
Если я беру один термин, то все хорошо. Выводится все что с термином связано.
А если я делаю несколько терминов(Hierarchical Select позволяет сделать такое) то нечего не выводится.
Просто пустая страница.
Как можно сделать сделать чтобы я выбрал три термина и мне по трем терминам выдало все материалы.
Буду очень благодарен.
penexe,вопрос по темизации grid view.Например,мне нужно вывести данные пользователя (это где то с десяток полей+аватарка+виджет рейтинга).В таблицу не хочу совать-некомпактно,поэтому делаю вид гридом,указываю количество колонок "1".Теперь пытаюсь рассортировать поля в 3 "кучки","кучки" идут в строку.
Поле 1 Поле 4 Картинка
Поле 2 Поле 5 Рейтинг
Поле 3 Поле 6
Если бы каждая "кучка" имела свой div-контейнер,всё было бы просто-задать каждому контейнеру отступ и float:left,а так код получается громоздкий и глючный
Можно ли как нибудь сгруппировать поля ТОЛЬКО для данного вида?
volocuga,
идешь в вид, там где список тем. в группе Row style output
будет что-то вроде views-view-fields--имя вида--page.tpl.php
это шаблон определяющий список полей, эти поля попадут в ячейку grid view
в шаблоне поля выводятся просто циклом
делай в шаблоне
Чёт не хочет шаблон цеплять.Беру любое неподсвеченное название из "Row style output",создаю файл в директории views\theme,жму "Rescan template files"-всё также жирным отмечен дефолтный
Чёт не хочет шаблон цеплять.Беру любое неподсвеченное название из "Row style output",создаю файл в директории views\theme,жму "Rescan template files"-всё также жирным отмечен дефолтный
penexe, а как можно выводить в таблицу последнее добавленное значение поля если я пользуюсь content multigroup?
как можно отфильтровывать вывод ревизий полей чтобы подряд не шли два одинаковых значения поля?
penexe, а как можно выводить в таблицу последнее добавленное значение поля если я пользуюсь content multigroup?
как можно отфильтровывать вывод ревизий полей чтобы подряд не шли два одинаковых значения поля?
volocuga, с виджетами
<?php
print $widgets['some_id']->operator;
// оператор обычно вырублен, это селект (Is equal to, Is not equal to и тд)
print $widgets['some_id']->widget;
?>
Добрый день, не подскажете как на страницу ноды (органик групс) добавить вкладку (в табы) если включен path autho
создал вид, берет аргумент из урла, вкладка появилась но она почему-то постоянно активная и ведет на главную страницу ноды
если же вести без алиасов урл (node/152/blabla) то все работает
Добрый день, не подскажете как на страницу ноды (органик групс) добавить вкладку (в табы) если включен path autho
создал вид, берет аргумент из урла, вкладка появилась но она почему-то постоянно активная и ведет на главную страницу ноды
если же вести без алиасов урл (node/152/blabla) то все работает
gumk, правильно путь для вкладки надо указывать node/%/blabla
Понемногу разбираюсь в views. Без него никуда))
Родилось пару вопросов.
Например.
Я сделал страницу где через фильтры выводятся поля из профиля пользователя.
Только выводится поля всех пользователей.
Как сделать чтобы выводилось данные из профиля текущего пользователя, тот что зашел на страницу?
И второй вопрос.
Поставил модуль usernode
И хотел вывести аватар пользователя.
Выбираю Usernode: Картинка
и нечего не происходит. Картинки нету. Аватар не ставил, но в настройках указал что выводить если аватара нету.
Тоже не пойму что делать.
penexe,тот код,что ты мне дал (фильтр по полю "Город") оказался вполне рабочим,я протупил с фильтрами:)
А вот ситуёвина такая:
К примеру,сайт знакомств,в анкете среди прочих 2 основных поля в виде выпадающих списков:
------------
Я:
мальчик
девочка
что-то среднее
------------
--------------
Ищу:
мальчика
девочку
что-то среднее
--------------
Отфильтровать по "мальчик-девочка-что-то среднее" элементарно,однако нам нужно 100% совпадение интересов,т.е если парень ищет девушку,ему должны предоставляться только те девушки,которые интересуются как минимум парнями.
volocuga, фантазии у вас нет совсем
достаточно переименовать селекты. вот смотри
как может выглядеть фильтр
ищет: (Я)
— мальчика
— девочку
— что-то среднее
а сама кто: (Ищу)
— мальчик
— девочка
— что-то среднее
другими словами, у анкеты должны быть 2 слекта в котором юзер выбирает кто он и кого ищет.
а форму придется немного темизировать заменив окончания и название селекта
Дано: "Organic groups" и "OG Vocabularies". Второй позволяет создавать словари, доступные только внутри групп.
Проблема: Отображение материалов у меня построено на views, один из них использует фильтр "Taxonomy: Vocabulary", фильтр открытый (exposed). Загвоздка в том, что отображаются все словари, а не только те, что созданы внутри этой группы.
Решение: Написать свой фильтр для словаря, который будут учитывать контекст группы. Код я набросал такой (правлю модуль OG_vocab, далее перенесу код в отдельный модуль:
--- Пишем для него код (взял из taxonomy_views) (файл views/views_handler_filter_og_vocabulary_vid.inc):
<?php
/**
* Filter by vocabulary id
*/
class views_handler_filter_og_vocabulary_vid extends views_handler_filter_in_operator {
function get_value_options() {
if (isset($this->value_options)) {
return;
}
--- А вот дальше - затык. Как привязать этот обработчик к уже определённым таблицам таксономии? Вот так не работает (фильтр не отображает словари) (файл og_vocab.views.inc):
<?php
/**
* Implementation of hook_views_data_alter().
*/
function og_vocab_views_data_alter(&$data) {
$data['vocabulary']['og_vocabulare'] = array(
'group' => t('-OG-Vocab'),
'title' => t('-OG Vocabulare'),
'real field' => 'vid',
'filter' => array(
'handler' => 'views_handler_filter_og_vocabulary_vid',
),
);
}
?>
PS: в модуль og_vocab.module информацию о версии API views поместил (og_vocab_views_api()....)
как задать значение в exposed фильтр п умолчанию при выводе старницы
те заходим на стр а там уже в 1 из фильтров задано значаение и по нему выводится список результатов
Как сделать блок с материалами, у которых определенное поле совпадает? То есть например есть поле автор, при просмотре ноды с полем автор "иванов" выводился вид всех материалов, у которых это тоже автор "иванов". Что-то со связями никак не разбирусь - выводит всё подряд, а не только Ивановых (
jason32,
решение описано тут чуть выше в коментах, только аргумент надо поменять на сск, а в пхп коде
делать node_load(arg(1)) http://drupal.ru/node/26420 #comment-151585
Ссылка не отобразилась, но как я понял речь про отображение всех материалов пользователя. Я понимаю, что через аргументы и php - только я не знаю точного формата во Views2. Пишу примерно так:
<?php $base_node=node_load($argument); $f=$base_node->field_trainer; if ($view->field_trainer==$f) return true; else return false;?>
- не работает. Сравниваем как раз по полю field_trainer, которое я к тому же вывел в полях для удобства. Как правильно, никак не пойму, в какой переменной находится текущая нода, которую надо выбрать или не выбрать в зависимости от значения поля field_trainer? Это $node может? Как обратиться то к текущей ноде?
jason32,
в ссылке пробел уберите и попадете на нужный коммент, а код такой
<?php $nid = arg(1); // это есть надо выводить блок на странице ноды $node = node_load($nid); if($node) { return $node->field_trainer[0]['value']; } ?>
не работает такой код, вообще не цепляет аргумент, когда внизу вводишь один из аргументов, то без вопросов, а из ссылки аргумент не берет. Код написал вот такой, работает, если есть аргумент, но его нет ((.
Внизу пояснения для поля: Введите PHP-код, который вернет TRUE или FALSE. Если код не вернет ничего, то это будет как FALSE, так что проверяйте - возвращаете ли вы значение, если вы не хотите, чтобы аргумент был признан некорректным. Не используйте <?php?>. Аргумент для проверки - это "$argument", а представление - "$view".Можете изменить аргумент, установив "$handler->argument".
Если использую arg(1) - вообще ничего не выводится, походу просто не знает эту функцию может? Может тут связи нужны какие-то?
Ссылка неверная, даже если убрать пробел - http://drupal.ru/node/26420 #comment-151585, не попадаю я ни на какой коммент
короче проблема локализовалась. Код работает, но не цепляет аргумент при отображении ноды, то есть например на ссылке node/55 не отображается блок с правильными полями, а создал страничный вид для страницы veds, и на странице veds/55 всё правилно выводится. То есть проблема с блоком - он не цепляет $argument, и не цепляет arg(). Так как же ему скормить число 55 ?
jason32,
мда, код надо писать не в валидатор. раз уж не можете прочитать тот коммент продублирую его.
Action to take if argument is not present:Provide default argument
потом Default argument type:PHP Code
вот туда мой код вставлять, в Validator optionsBasic validation
решилось установкой Тип аргумента по умолчанию: ID материала из URL, а код приведенный выше оставил какой есть. Так заработало. Попробовал вставить php код сверху, и базовую проверку - всё равно не работает.Возможно - нужны какие-то связи? Паршиво, что такие несостыковки с языками.
Создан глоссарий по терминам словаря. В качестве терминов "Имя Фамилия" людей.
Вопрос: как сделать группировку не по первой букве терминов, это получается по Именам, а по Фамилиям, т.е. по первой букве после пробела?
Да не часто такие топики (в плане концентрации вопрос-ответ) увидишь! Респект стартеру!
Вопрос:
Имеем вью, которая выводит по 10 нод на страницу (ноды - коротенькие стишки). Возможно ли после каждой ноды во вью вставить форму (свернутую) с полями для ввода мыла, темы и кнопки для отправки этой ноды по электрической почте? или какое другое красивое решение есть?
Да не часто такие топики (в плане концентрации вопрос-ответ) увидишь! Респект стартеру!
Вопрос:
Имеем вью, которая выводит по 10 нод на страницу (ноды - коротенькие стишки). Возможно ли после каждой ноды во вью вставить форму (свернутую) с полями для ввода мыла, темы и кнопки для отправки этой ноды по электрической почте? или какое другое красивое решение есть?
простое решение врятли есть, тем более с views, надо писать небольшой модуль под задачу
IPlayer, также можно в шаблон для вьюза вписать нужную форму после каждого рядка с выводом ноды.
Например форму можно сделать с помощью webform модуля. И потом вставить в шаблон для row вьюза после вывода необходимых полей, которые вьюз сам выведет node_view(node_load($form_nid));
Можно это дело завернуть в свернутый блочок еще и т.д.
И потом вставить в шаблон для row вьюза после вывода необходимых полей, которые вьюз сам выведет node_view(node_load($form_nid));
Можно это дело завернуть в свернутый блочок еще и т.д.
О, спасибо за идею.. сразу вопрос... у меня, получается должно быть 10 форм однотипных на странице. Мне надо будет 10 форм делать с разными ид или одной будет достаточно? я просто с формами пока дела не имел...
А вот еще модуль, если не хочется шаблон для вьюза править - то, что нужно. Позволяет добавлять ко вьюзу любые поля, в которые можно включать и пхп скрипты для вычислений, для которых доступны данные из базы, выведенные вьюзом. Можно и формы любые вставить. http://drupal.org/project/views_customfield
Conditional fields, есть что нибудь подобное для вывода полей exposed filter. Что бы поля фильрации выводились по такому же принципу как в этом модуле?
Есть вью. У нее есть аргумент TermID. Во вью можно задать Title для страницы только с использованием термина таксономии который в аргументе. А у него есть 1-2 родителя и мне необходимо что бы в Title страницы была вся цепочка: Термин1 | Термин2 | Термин3. Как заполучить родителей?
Сам задал вопрос - мне и отвечать походу
Сделал вот такой хук и к нему впридачу функцию построения заголовка.:
function modulename_views_pre_view (&$view,&$display_id,&$args){ $view->display_handler->set_option('title', pz_build_title($args[0])); }
подскажи с exposed form in block
создаю блок с закрытыми фильтрами + один раскрытый в виде выбора термина словаря таксономии, помещаю блок в колонку.
При попытке фильтровать новости на странице по термину блок передает браузеру значение ?tid=%
%-номер термина таксономии.
При этом никакой фильтрации не происходит.
Подскажи что не так.
В профиле пользователя сделал выбор места жительства через таксономию и Hierarchical Select, как описано здесь.
С помощью Views сделал вывод краткой информации обо всех зарегистрированных пользователях. Пытаюсь прикрутить выборку по регионам.
В связи с этим такой вопрос: можно ли каким-нибудь образом ограничить список терминов в exposed фильтре только теми городами, которые были выбраны пользователями, чтобы не грузился список всех городов, какие только есть в словаре?
Вопрос: можно ли реализовать через views вывод персональной формы контактов пользователя в зависимости от его принадлежности к домену созданному через модуль domain с включенным Domain Views + Domain User
Последний связывает выделенные поддомены с пользователями.
Получается, что domain интегрирован с views, но предоставляет только фильтры - id домена и т.п. - а среди аргументов чего-либо похожего не наблюдается.
Подскажите, пжта, можно ли как-то сделать, чтобы в меню была ссылка типа "Контакты", но на каждом поддомене это были свои контакты, контакты владельца поддомена к которому он привязан через Domain User
Domain предоставлялет API, включая domain_user.module, но я не особенно силен в программировании (чую без этого не обойтись в данном случае) хотя... потому и спрашиваю.
У меня сложилась такая ситуация.
Надо вывести в панели 6 вьювов у которых стоит аргумент на user id
Хочу сделать одну панель и туда кинуть 6 вьювов и чтобы у панели не было четкого адреса, чтобы аргументы работали с панелью и по разным ссылкам эту панель выводило с применением аргументов.
Возможно ли это?
Может вопрос тут больше про панели, но я не пойму в чем бок у меня, либо панели ковырять или ковырять вьювы.
Интересует мнение.
спасибо.
хочу добавить определенный процессинг ко views (если конкретнее, менять сортировку основываясь на переменных из $_SESSION)
Так вот, запарился - все изменения которые я делаю в хуке модуля как будто не применяются. Функции вызываются, точно.
пробовал hook_views_pre_execute, hook_views_pre_view:
Элементарный код:
Вывожу фильтр по таксономии, термин необязателен при фильтрации,но система по умолчанию ставит первый термин из списка. Мне же нужно, чтобы при заходе на вид термин был не выбран и можно было его выбрать( или же не выбирать вообще). Никак не могу найти подобную настройку, уже все перерыл
Галочка стоит и так. Убирание её лишает пункта "Любой" в списке, что неправильно. Поясняю ещё раз - по умолчанию должен стоять именно этот пункт, чтобы при заходе на фильтр отображались все возможные варианты, без фильтрации. Не помогло, короче
Помогите, пожалуйста, решить задачу с помощью views. Имеется тип материала, в котором есть 4 числовых поля: день и месяц начала сезона, день и месяц конца сезона (без указания года, т.е. сезоны ежегодно в одно и то же время). Использовать date для этих целей не удалось, т.к. в дате никак нельзя уйти от привязки к году. Например: начало сезона 1 мая, конец — 15 сентября:
Нужно вывести только те материалы где текущая дата попадает в диапазон между началом и концом сезона. Например, если сегодня 1 апреля, то приведённый сезон выводить не нужно, а если 15 мая — то нужно. Пока решил с помощью php-блока:
<?php $sql = "SELECT np.nid, np.title, n.title as season FROM node n, node np, content_field_parent p, ( select s.nid, MAKEDATE(YEAR(CURDATE()),1) + INTERVAL s.field_from_month_value - 1 MONTH + INTERVAL s.field_from_day_value - 1 DAY as d1, MAKEDATE(YEAR(CURDATE()),1) + INTERVAL s.field_to_month_value - 1 MONTH + INTERVAL s.field_to_day_value - 1 DAY as d2 from content_type_season s ) s WHERE s.nid = n.nid AND n.nid = p.nid AND np.nid = p.field_parent_nid AND ((d1 <= d2 AND CURDATE() BETWEEN s.d1 and s.d2) OR (d1 >= d2 AND CURDATE() NOT BETWEEN s.d2 and s.d1))";
$result = db_query_range($sql, 0, 10); while ($node = db_fetch_object($result)) { $output[] = l($node->title, "node/$node->nid") . ". $node->season"; } print theme('item_list', $output); ?>
Хотелось бы использовать views, т.к. кроме блока нужна ещё и страница со списком всех сезонов. Да и удобнее через views редактировать. Помогите.
по видимому мой вопрос таки поставил уважаемого гуру в тупик. Повторю ка я его ещё раз: Вывожу фильтр по таксономии, термин необязателен при фильтрации,но система по умолчанию ставит первый термин из списка( хотя выше есть пункт <Любой>) . Мне же нужно, чтобы при заходе на вид термин был не выбран и можно было его выбрать( или же не выбирать вообще).
Поясняю ещё раз - по умолчанию должен стоять именно <Любой> , чтобы при заходе на фильтр отображались все возможные варианты по данному фильтру, без фильтрации.
Никак не могу найти подобную настройку, уже все перерыл.
выводить вид вместо друпальной страницы из таксономии? путь указать taxonomy/term/%
и аргумент.
а просто "забить" стандартный (чтобы он не работал)хуком _menu() только? Так было бы проще...
Странно, почему views не отлавивает страници и аргументы таксономии от патчауто вида /tax/ma_slovar/termin, от материалов же прекрасно работает /my_type_meterial/name?
двухуровневая таксономия. Группируем по второму уровню, выводим нумерованным списком материалы, которые лежат там. Как отгрупировать по первому уровню без правки шаблонов вывода? То есть:
Животные
-- Кошки
-- Собаки
Птицы
-- Соловьи
-- Попугаи
-------------------------
Как сделать вывод материалов так же, чтобы группировалось термины второго уровня( Кошки, собаки) группировались внутри своих родителей, а материалы уже группировались внутри них. Сделал только второе первое делаю через шаблоны( что не очень получается), но может есть какой-нибудь изящный способ?
уточню задачу. Есть два поля. Надо сначала сгрупировать по одному полю( первый уровень таксономии вывел в поле computed field), а потом по второму. Не нашел нигде такого.
А вот ещё вопросик.Установлен модуль content profile,то есть теперь каждый профиль пользователя=нода.К этим нодам профиля прикручена ссылка "Закладки" (используется модуль "flag").Теперь каждый пользователь может добавлять другого пользователя в свои закладки
Задача:Вывести топ пользователей,которые встречаются в закладках других пользователей наиболее часто.С фильтрами,сортировкой понятно,но тут не обойтись без аргументов...
И снова я,страждущий...
Вопрос касается views 1,но,возможно,направите на путь истинный.
Итак,есть вид taxonomy/terms/term_ID,для него развёрнутый фильтр с терминами словаря,например "Производитель".Если я отрываю например категорию "Телевизоры",я получаю только телевизоры.Теперь хочу отфильтровать телевизоры "Sony",но получаю из выпадающего списка ВСЕХ производителей,которые есть на сайте.
Как динамически ограничить показываемые термины в развёрнутом фильтре только теми,которые подходят для данного продукта?
Добрый день, очень нужен совет-разъяснение по поводу переопределения вывода терминов.
Необходимо создать несколько разных представлений, для разных терминов. Используя стандартное представление taxonomy/term/% мы заменяем все термины из всех словарей. Видимо можно назначить отдельным терминам вьюс используя прямой адрес к термину (taxonomy/term/13). Но, что делать если таких терминов несколько, а что еще более страшно количество их изменяемое. Я использую для терминов определенного словаря (его термины должны иметь свой вид, отличный от вида других терминов в других словарях) автоалиасы типа brand/[cat-raw], но вьюс не понимает адрес brand/%.
Объясните плис, как быть в такой ситуации, что можно сделать...
Заранее, большое спасибо.
модуль taxonomy_redirect
вам надо выделить словарь брендов и сделать для них другое представление, тогда в настройках модуля выберите нужный словарь и укажите путь brand/!tid, ну а потом views2 будет принимать путь brand/%
спасибо)
только пока не помогло, что то страшное произошло после включения этого модуля и после введенных настроек. Облако тегов, выводящее термины этого словаря, перестроилось и теперь отображает все наоборот, там где больше материала выглядит намного меньше того где нод немного. Кроме того не работают ссылки на термины (страницы недоступна).
Может мешает autopath?
спасибо)
только пока не помогло, что то страшное произошло после включения этого модуля и после введенных настроек. Облако тегов, выводящее термины этого словаря, перестроилось и теперь отображает все наоборот, там где больше материала выглядит намного меньше того где нод немного. Кроме того не работают ссылки на термины (страницы недоступна).
Может мешает autopath?
проблему так и не решил. taxonomy_redirect поставил как и сказали для словаря brand/!tid
Мне кажется проблема с autopath. При настройке [tid] он добавляет к алиасам (-0), получается адрес типа brand/9-0
если вручную изменить на brand/9 (стереть -0), то алиас работает.
Из просмотра синонимов:
brand/9 taxonomy/term/ - это видимо taxonomy_redirect создает, при этом ссылка не работает.
brand/9-0 brand/9 - autopath заменяет
Проблемы ву алиасах, разберитесь, кто что создаёт. taxonomy_redirect алисы _не_ создаёт! Он устанавливает обработчик для термина по существующему системному пути.
К материалу привязано 2 словаря.
Первый в фильтры (Таксономия: Термин ID), второй в аргументы (Таксономия: Синоним термина).
По отдельности - всё ОК. Как вместе - траблы.
При аргументах = Таксономия: ID Термина оба словаря работают...
Думал, может особенность есть совместного использования.
Views не распознаёт конструкцию вида /taxonomy/term/1,2,3?
Стоят два аргумента: "Таксономия: Term ID (with depth)", "Таксономия: Term ID depth modifier". Со вторым понятно, проблемы с первым:
- установлена опция валидации и проставлен параметр "Term IDs separated by , or +"
При таком раскладе, views формирует: ...(SELECT tn.vid FROM term_node tn WHERE tn.tid = 1)...
Если включить опцию "Allow multiple terms per argument", то: ...(SELECT tn.vid FROM term_node tn WHERE tn.tid IN (1,2,3))...
То есть выборка идёт по ИЛИ, хотя путь указан по И (1,2,3). В описании опции так и написано: "If selected, users can enter multiple arguments in the form of 1+2+3. Due to the number of JOINs it would require, AND will be treated as OR with this argument."
Засим вопрос: возможно ли заставить views обрабатывать термины по И?
Здравствуйте всем!
Надо переделать трекер - добавить новую колонку: "Материал: Автор последнего комментария", и, чтобы это поле ссылалось не на профиль юзера, а на последний комментарий или подменять ее ссылку с поля "Материал: Новые комментарии".
Подскажите плиз, как подобное сделать.
Как вывести вьюсами топ авторов?Для форума.Суммировать (или на крайняк просто комментарии) количество созданных нод (топиков) и количество каментов,созданных пользователем.В лоб,клацая мышкой не получилось.
Нашёл нечто похожее http://drupal.org/node/302030,но здесь без аватарок (добавить не могу,т.к не дружу с пхп) и нет гибкости.
Не подскажете как вывести связи пользователей и самих пользователей попарно которые взаимосвязаны - модуль взаимосвязей user relationships. Заранее спасибо
Как в exposed фильтре вывести селект с терминами определенного словаря, которые находятся на определенном уровне иерархии?
Конкретно - мне нужно организовать форму поиска товаров одно из полей которой - производитель. Производители у меня представлены терминами таксономии, причем стоят они на втором уровне иерархии. Первый уровень - вид товара, второй - наименование производителя, третий - коллекция производителя. (Еще одна сложность - это то, что один производитель может иметь нескольких родителей, то есть выпускать несколько видов товара). Вот такая жопа.
Отмечу, что искать мне нужно именно по производителю. Вид товара и коллекция производителя в селекте отображаться не должны.
Есть представление, в котором сделан фильтр по терминам таксономии. Как ограничить выпадающий список только теми терминами, которые на текущий момент использованы в нодах?
Доброго времени суток... Мучаюсь с вкладками на views_tabs. Подскажите как реализовать: sitename.com/portfolio тут должно быть три вкладки с со слайд шоу на лайтбокс. На одну ноду все нормально выводится...а вот как вкладки реализовь с помощью views_tabs никак понять не могу... Я еще не очень шарю в views так что пожайлуйста попдробнее... Очень буду благодарен... и еще в английском не силен...
Вместо views_tabs я бы рекомендовал [module=quicktabs] - он универсальнее и функциональнее.
А по поводу views_tabs - посмотрите в "Основных настройках" "Стиль" и "Стиль строки" - скорее всего там. Ну в "Administer › Site configuration › Views Tabs" на всякий случай.
Спасибо посмотрю. В "Administer › Site configuration › Views Tabs" все включил. В основных настройках > есть "Views Tabs" но каким макаром они настраиваются не понятно... как не мучился или пустой результат или ошибку выдает. Как я понял там прикол с аргументами... но как его настроить не понятно... помогите плиз...
Стоит задача: вывести через views популярные пути за определенный период.
Для подсчета статистики использую visitros http://drupal.org/project/visitors
Для использования таблиц модуля visitors воспользовался модулем Table wizard. Для подсчета использовал Views GroupBy.
Все отлично: выводятся популярные пути в порядке убывания.
Но есть одна трабла. Не могу сделать выборку за определенный период.
Так как в таблице visitors дата-время хранится в unixtime и тип данных поля int.
1. То есть views не воспринимает это поле как дата и соответственно к нему применить фильтры для даты.
2. Необходимо сделать выбору за определенный период. А фильтрах можно прописать только определенные значения.
Делаю магазин на ubercart, вывожу через обычную таксономию, views прикручен
с помощью CCK добавил тип продукта и текстовые поля характеристик, например field_size1,field_size2 - размер и field_color1, field_color2 - цвет, ввожу их при создании материала
нужно: что бы пользователь при заказе мог выбрать цвет из 2-х и размер из 2-х вариантов и соответственно что бы все это в корзине отображалось.
Знаю, что нужно делать через аргументы к views, а как, не знаю. Расскажите, плиз поподробнее и куда эти аргументы вставлять?
<?php //Обращаемся к views $view = views_get_view("popular_node"); //Выбираем дисплей $display_id = "page_1"; $view->set_display($display_id); //Что то делаем с кэшем $view->is_cacheable = FALSE; //Назначаем фильтр минимальную дату - 36 часов назад $view->display[$display_id]->display_options['filters']['visitors_date_time']['value']['min']=time()-129600; //Назначаем фильтр максимальную дату - текущую дату $view->display[$display_id]->display_options['filters']['visitors_date_time']['value']['max']=time(); //Выбираем сколько строк войдет в выборку $view->display[$display_id]->handler->options['items_per_page'] =10; //Вывод views print$view->preview($display_id); ?>
Замечание. Фильтры уже заведены в дисплее. Все параметры которые меняются, обязательно должны быть заведены в самом дисплее (в моем случае page_1). А не браться по умолчанию из дефолтового дисплея.
Темизирую exposed фильтр. Нашел на форуме, что нужно найти в папке модуля файл views-exposed-form.tpl и переместить в папку темы. Сделал. Изменяю - нет реакции от сайта.
Во что его стоит переименовать? Жал на reskan template files, нет там ничего со словом exposed...
Ну точно! Кэш. Торможу. Спасибо!
Вопрос по навеске уникальных стилей, как можно навесить стиль = машинному имени поля (ну или другому слову)?
Я вижу, как в этом файле создается описание метки, где описан ввод exposed поля. Но как этот класс вставить, какой переменной?
Ну точно! Кэш. Торможу. Спасибо!
Вопрос по навеске уникальных стилей, как можно навесить стиль = машинному имени поля (ну или другому слову)?
Я вижу, как в этом файле создается описание метки, где описан ввод exposed поля. Но как этот класс вставить, какой переменной?
либо я туплю, либо там в цикле есть переменная $id
т.е. для пользователя выводится и полле и заголовпк для гостя не выводится поле и не должно выводится заголовок этого поля. а он выводит... куда копать.
Что за поле delta в новых Views -ах?
на org судя по результатам поиска уже многие пользуют - а я никак не могу понять для чего оно.
Те кто знает что это - расскажите.
Подскажите, если я делаю фильтрацию Таксономия:Term выводятся поля "оператор" и "значение", куда вводится значение вручную... как сделать, чтобы не вбивать значение вручную, а выбирать из словаря?
Подскажите, если я делаю фильтрацию Таксономия:Term выводятся поля "оператор" и "значение", куда вводится значение вручную... как сделать, чтобы не вбивать значение вручную, а выбирать из словаря?
Имеится views и date.
Создана вьюха сортирующая ноды по времени.
Как сделать чтобы если число в поле datestamp совпадало с сегодняшним отображалось не число а надписью "Сегодня" и аналогично "Завтра"
Имеится views и date.
Создана вьюха сортирующая ноды по времени.
Как сделать чтобы если число в поле datestamp совпадало с сегодняшним отображалось не число а надписью "Сегодня" и аналогично "Завтра"
подскажите, пожалуйста, как добавить в exposed filter критерий по возрасту - "щенок" (до года), "подросток" (от года до двух) и "взрослый" (от двух лет), если в таблице хранятся даты рождения?
подскажите, пожалуйста, как добавить в exposed filter критерий по возрасту - "щенок" (до года), "подросток" (от года до двух) и "взрослый" (от двух лет), если в таблице хранятся даты рождения?
без своего обработчика фильтра не получится сделать.
Никак, у вас храняться один тип данных, а нужен вам другой.
Или писать свой модуль, который будет делать преобразование в фильтре views или в материале заводить computed field в котором хранить возраст и делать по нему фильтр "от и до" или "между".
Сделал шаблон для сегодня и завтра, но вот формат даты не выставляется и выводится криво. Деньнедели/Месяц/День/Год http://avto-kino.ru/afisha
Как выставить человеческий формат, типа "d. m. Y - l"
Ковырял настройки поля даты, но похоже вопрос во вьюсах.
Имеется тип материала Книга, у него есть поле типа image (фотка книжки)
Никак не получается вывести все книжки без фото.
Вo views1 все просто, я устанавливал оператор 'has image' для фильтра "Image: Изображение (field_book_image)" в значение нет и все.
Во views2, имеется фильтр "Содержание: Изображение (field_book_image) - list", у которого 2 значения Истина и Ложь. При выборе Ложь, представление возвращает пустой результат. При выборе Истина показываются книги с фото.
В общем, книжки с изображением я выбрать могу, а без - нет ((
Имеется тип материала Книга, у него есть поле типа image (фотка книжки)
Никак не получается вывести все книжки без фото.
Вo views1 все просто, я устанавливал оператор 'has image' для фильтра "Image: Изображение (field_book_image)" в значение нет и все.
Во views2, имеется фильтр "Содержание: Изображение (field_book_image) - list", у которого 2 значения Истина и Ложь. При выборе Ложь, представление возвращает пустой результат. При выборе Истина показываются книги с фото.
В общем, книжки с изображением я выбрать могу, а без - нет ((
В Relationships выбрать связь с таблицой вашего поля (Require this relationship галку не ставить, Delta = 1), потом в фильтре File: File fid выбрать значение Not empty
1.
заголовок материала конкретного типа с результатом голосования текущим пользователем...
т.е. пользователь отдавал голоса за материалы +1 или -1
необходимо вывести заголовок материала (определенного типа) с результатами голосования текущего пользователя ( просматривющий страницу).
2.
а лучше всего может ли с вьюхой следующее сделать
на странице в выпадающем меню все заголовки типа материала за который голосвал текущий юзер) и пр и выборе чего то из списка выводило бы список пользователей которые также проголосовал.
1.
заголовок материала конкретного типа с результатом голосования текущим пользователем...
т.е. пользователь отдавал голоса за материалы +1 или -1
необходимо вывести заголовок материала (определенного типа) с результатами голосования текущего пользователя ( просматривющий страницу).
2.
а лучше всего может ли с вьюхой следующее сделать
на странице в выпадающем меню все заголовки типа материала за который голосвал текущий юзер) и пр и выборе чего то из списка выводило бы список пользователей которые также проголосовал.
Имеется табличное представление - выводится несколько таблиц которые сгруппированны по термину таксономии присвоенному ноде. в примере есть 3 сгруппированных таблицы, -=цифры=- результат вывода строки
print $count; в темизированном views-view-table.tpl.php
Как нибудь можно докопатся до TID термина (ов) по которым осуществляется группировка таблиц.
Сейчас я это делаю с помощью такого кода в темизированном views-view-table.tpl.php
в куске кода между последними PHP тэгами я использую переменную $count, но при таком способе не получится поместить эти строки до того места как эта переменная была задана, к тому же даное решение кривовато, может быть есть более элегантный способ достучатся до TIDа термина по которому делается групировка таблиц во вьюхе.
но осталась проблемма с проверкой пустого вывода у строчки
print views_embed_view('notes', 'default', substr($notes_args,1));
она часто проявляется пустой строчкой там где выводится пустой вид.
аргумент не может фильтровать ноды по заголовку без точного совпадения, а фильтром можно отобрать ноды заголовки которых содержат ту часть которая передана аргументом, можно обычный фильтр либо exposed, но всеравно нужно передавать значение аргумента значению фильтра. пытаюсь заставить работать finder views а он передает вьюхе как аргумент введенное в поле значение.
При помощи hierarchical_select и CCK в словарь пользователи добавляют многоуровневые термины.
-Первый термин
--Подтермин1
--Подтермин2
---Термин подтермина1
---Термин подтермина2
Вопрос: можно вывести разным views'ом отдельные уровни словаря? На второй уровень, например, одно представление, на третий другое.
Taxonomy Views Integrator или taxonomy_redirect мог бы использовать просто приписывая терминам разные пути, но термины создаются пользователями, значит как то нужно покрутить вьюс чтоб он воспринимал уровни. Такое можно сделать?
Комментарии
ОК, я уже спрашивал на сайте, мне не ответили, поэтому спрошу еще раз: помогите настроить вид всех материалов с участием пользователя, т.е. как здесь на сайте в трекере (материалы с моим участием). Кажись уже все возможные варианты перепробовал и ничего не вышло Что ставить в полях: фильтры, аргументы и релэйтиншипс?
в аргументах: Материал: User posted or commented, также в настройках этого аргумента можно установить
Provide default argument = User ID from logged in user
Спасибо сейчас попробую.
Не получается: выводит все записи, для проверки создаю запись одним пользователем, захожу под другим и у него эта запись тоже есть хотя в ней он не участвовал.
"Также в настройках этого аргумента можно установить Provide default argument = User ID from logged in user"
Это как я понимаю ставиться в поле: Action to take if argument is not present. У меня есть только User ID from UR, а не User ID from logged in user.
Т.е. как я понимаю проблема в том, что аргумент не представлен и поэтому выводит все материалы. (Action to take if argument is not present выставил Display all values)
И еще аргумент Материал: User posted or commented имеет вот какое пояснение:
Display comments only if a user posted the node or commented on the node, т.е. он выводит коменты?
Да, еще подумал - а то, что у меня выключен модуль трекера не имеет значения? Просто вкладка "Следить" в профиле мне не нужна.
http://easycaptures.com/7797618091
Спасибо за помощь и извиняюсь за поднятую шумиху - оказалось надо было просто обновить views... Зато теперь все работает!
Включите трекер в Views и будет вам счастье. Он есть по умолчанию-)
Трекер в views выводит "Shows all new activity on system." и только.
Как создать иерархический список терминов словаря?
у меня простой вопросик
экспоз фильтры, не соображу, включить включил, а где настроить (это в 6-ке)
у меня страница: список названий нод, фильт по типу и по термину таксономии.
Хочу сделать "поиск" по полю заголовок
ну как где настраивается, в том же месте где и создаешь
после нажатия Expose появляются доп. настройки, и все.
выше самого списка будет форма, правда если в Осн. настройках стоит Exposed form in block: Да
то надо включить дополнительно блок, он появится.
Как сделать сложный поиск вьюсами (если возможно)Возьмём классический пример-анкета сайта знакомств http://loveplanet.ru/a-expsearch/
как вывести на главную все записи одного типа контента в виде картинки и краткого описания?
создать вид, со страницей указать путь допустим front,
Row style: Материал, в доп. настройках указать Display only teaser. А картинку темизировать через node.tpl.php
в фильтрах установить Материал: Тип
Спасибо!
А подскажите ещё пожалуйста, как вывести список юзеров с мах кармой?
увы пока это невозможно
написал мини модулек
1)создаем вид http://easycaptures.com/6159685708
2) добавляем relationship Пользователь: Voting results
3) ставим в её настройках http://easycaptures.com/7788180469
4) добавляем поле Voting API results: Значение
Делал все как здесь описано (views 2.3, Voting API 2.0-rc2, Vote Up/Down betta-4) и таких настроек почемуто нет, точнее сома форма есть но нет в ней karma_points.
И второй вопрос как с помощью views вывести суммарное количество голосов за посты, принадлежащие этой группе?
1) karma_points нет, тк как нет user_karma
2) пока такого функционала нет
user_karma ключена со всеми плагинами, а karma_points так и не появлись
подсчет кармы произведите. мож поможет
(2ая попытка)
Расскажи про relationships опции, для чего они нужны?
нужны для связи разных таблиц в видах, об это хорошо впринципе написано здесь.
автор пишет что поидее для каждого вида должны бить прописаны relationships, но тк views1 был бе этого функционала уже было поздно что-то переделывать. сейчас есть базовое отношение( когда создаешь вид там указывашь нода, термин ревизия и тд)
допустим выбрал нода(материал) надо сделать вид название ноды + её рейтинг из voting api, вот тут надо указать
relationship чтобы связать таблицу с нодами с 2мя таблицами отвечающими за рейтинг, тогда в полях появятся несколько новых полей и их можно использовать.
другой пример:
при создании установили Пользователь, у меня есть relationship Материал: Content Profile
с помошью него у меня будет базовая таблица users но я также смогу выбирать все что относится к ноде связанной через
Content Profile.
фишка вобщем в том что например файл может быть связан с пользователем, но не связан с нодой
или каждая ревизия одной ноды имеет авторство разных пользователей и тд
Есть вид выводящий скажем заголовок, категорию и оценку (саму оценку и количество голосов, в виде 7.25/24, склеить два поля в один столбец темизировав табличный вьюс не проблема), представление табличное, нужно сделать чтоб при нажатии на заголовок оценки сортировка происходила сначала про оценке а потом по количесту голосов
делаем так http://easycaptures.com/3255523266, а вот результат http://easycaptures.com/1637420822 (причем без всяких темизаций)
penexe спасибо, это логичное решение, но я не достаточно полно описал задачу, критерии сортировки уже используются в порядке: серия->номер серии->средняя оценка->количество голосов, для того чтобы когда сортирую по названию серии следом шла сортировка по номеру в серии, то есть сортировка по оценке уже не будет работать правильно т.к. приоритет у серии и номера (они выше по списку). В общем нужно чтобы при сортировке по оценке критерии серия и номер как бы удалялись (а лучше чтоб менялись их приоритеты), а при сортировке по серии удалялись критерии оценок. То есть нужно как-то динамически перехватывать (наверно в своем модуле) поле сортировки и менять на лету приоритеты критериев, вот
По первому скрину, птичка "override normal sorting..." должны быть снята для достижения правильного результата.
А с объединением полей и правда затупил, я их темизацией склеивал Хотя в моем случае без темизации все равно не обойтись, таблица у меня не обычная
Как можно отследить причину того что не появляеться блок созданный с помощью Views?
в превью внизу всё отображаеться - "Empty text" задал, но блок нигде не появляеться, в блоках регион показа ему задал.
[решено
просто в поле аргументов забвл написать чтобы он показывал "Empty text" в случае если аргументов нет
бывает)
Ух, халявная поддержка по views
Сам недавно столкнулся с выводом извратного рейтинга в таблице пользователей, оказалось нужный relationships отсутствовал, пришлось юзать SQL )))
Засим вопрос: penexe, ты не встречал внятных howto по написанию субплагинов к views? В частности организация кастомного relationships.
да рейтинг юзеров, вобще типовая задача, тоже маялся с SQL, думал в views сложно будет, пока сегодня не глянул разобрался маленько результат чуть выше в коментах
views я пока сам изучаю методом тыка и просмотра дефолтных хэндлеров из папки views а также контриб модулей
вот тут в группе можно кое чего почерпнуть http://groups.drupal.org/views-developers
Dan, а есть реальная задача какой именно relationship надо сделать?
Задача следующая: список пользователей с полями профиля, плюс количество комментариев, ими оставленными, плюс рейтинг. Рейтинг высчитывается так: за каждый комментарий на сайте можно проголосовать (vote_up_down), соответственно рейтинг - кол-во очков за комментарии пользователей.
Твой votingapi_bonus.zip ещё не смотрел, обязательно изучу.
кол-во комментариев хм.. интересно
кстати еще хорошо помогает
<?php
function hook_views_data_alter(&$data) {
dpm($data);
}
?>
чтобы посмотреть массив полей, свойств и тд
Да, в лоб - можно установить UserStats и взять оттуда. С извратами может и во views можно будет, но это уже будет не список пользователей, а комментов скорее всего.
Вообще, надо будет хорошенько проштудировать мануалы - чую это всё легко через модули решить. На SQL-то один JOIN - и готово.
Спасибо, учту
всем привет!
хочу сделать следующее:
1) имеем сейчас - http://www.picamatic.com/view/2894809_11/
2) хочу сделать - http://www.picamatic.com/view/2894810_22/
в общем, чтоб результат из формы искался в "номер производителя" и "оригинальный номер".
ну еще неплохо сделать, чтоб и в наименовании тоже.
спасибо!
penexe,не могу найти во вторых вьюсах поля от Imagecache и VotingAPI.Подскажите,где искать?
от imagecache нет полей, есть от cck imagefield, ищите там где все поля от cck
для VotingAPI надо добавить сначала relationship Материал: Voting results
Спасибо
penexe, а по моему вопросу ничего не можете подсказать?
вряли это без хаков возможно
Сделал блочный вьюз с аргументом taxonomy:termID.
Для валидации выбрал режим PHP code.
В поле для кода ввожу:
$node = node_load(arg(1));
$terms = taxonomy_node_get_terms_by_vocabulary($node, 2);
return $terms[0]->tid;
}
return FALSE;
2 - ID словаря моего.
Таким образом хотел вывести в блоке ноды, которые прикреплены к тому же терму, что и нод, на странице которого находимся. Да не выходит что-то - выводит empty text даже там, где точно есть соответствующие ноды, не пойму в чем ошибка?
В Action to take if argument is not present: выбрать Provide default argument PHP code
И туда вставить
<?php
if(arg(0) == 'node' && is_numeric(arg(1)) && !arg(2)) {
$node = node_load(arg(1));
$terms = taxonomy_node_get_terms_by_vocabulary($node, 2);
if($term = array_shift($terms)) {
return $term->tid;
}
}
?>
Попробовал, не выводит, но в этом случае и эмпти текст не выводится, вообще пусто.
@ Dan (если это мне) думаю, что это стандартная задача для вьюза, во вьюзе1 легко с помощью такого аргумент хендлин кода решал, а тут не выходит чего-то.
мне помогло: return arg(2)
при url = taxonomy/term/3
Здравствуйте, ув. penexe
У меня такая задачка. Есть тип материала "Фото" (c полем cck imagefield) и словарем "Альбом". Возможно ли с помощью views2 на одной странице (например, mysite.ru/gallery) сделать выборку:
Альбом №1 (термин словаря) - три последние/первые/случайные ноды
Альбом №2 (термин словаря) - три последние/первые/случайные ноды
...
Альбом №n (термин словаря) - три последние/первые/случайные ноды
Подскажите, пожалуйста.
Заранее благодарен
Я бы сделал программно:
<?php
$vid = 2;
$view_name = 'name';
$tree = taxonomy_get_tree($vid, 0, -1, 1);
foreach($tree as $term){
print views_embed_view($view_name, '', array($term->tid));
}
?>
Код не проверен!
Dan, спасибо, сделал пока твоим способом, все вывелось, но все равно интересно, почему не идет из интерфейса вьюза...
Автозаполняемые зависимые значения.Например,есть список городов,в теринах таксономии или просто как поле с множественными значениями в типе контента.Этот список городов выводим в виде развёрнутого фильтра.Юзер выбирает город,ему подгружается список областей.Можно ли ?
Прикольно!
Нет, не тебе, но рад, что работает
Это для vitvas.
Для тебя ничего другого, кроме как решение от penexe посоветовать не могу. Если не работает, попробуй вместо этого кода вставить просто "return 123;", где 123 - термин, по которому точно должно выводиться что-то. Если не работает, - ошибка настройки views, копай там, если работает - ошибка в коде, проверь его.
2vitvas: не дублируй пожалуйста сообщения в форуме. Можно было просто дать ссылку.
2 Dan: Спасибо за подсказку решения, завтра буду проводить испытания.
(но вопрос, можно ли реализовать такую задачку исключительно настройками views, остается актуальным, интересно же)
А за дубль, конечно, извините, но мне показалось нелогичным в обсуждении "задай вопрос" написать "мой вопрос здесь".
hierarchical_select + порт субмодуля под 6ку http://drupal.org/node/342991
На данный момент интеграция hierarchical select с views для 6-ой версии отсутствует, разработчик модуля столкнулся со сложностями, которые не смог решить пока.
penexe, спасибо, все работает, была моя ошибка.
А теперь хочется сделать немного посложнее, а именно:
Сейчас выводится на странице с нодом блок с несколькими нодами, которые прикреплены к тому же терму из данного словаря(а именно 2).
Хочется теперь добавить условие, чтобы nid у выводимых нодов был больше, чем у нода, на странице которого находимся.
Можно конечно добавить аргумент node:nid, в хендлин коде вставить опять определять по дефолту из адреса страницы с текущим нодом равный его nid и сделать модулек с хуком
<?php
hook_views_query_alter(&$view, &$query) {
if($view->name == 'MY_VIEW') {
$query[0]['clauses'][1(или какая цифра будет)] = "node.nid > '%s'";
}
}
?>
но как-то это не очень красиво, есть ли более красивое решение?
gorr, на ум приходит только такое решение:
<?php
$nid = arg(1);
//block_1 - это имя dispay, может быть page_1, page_2 и тд
$myview = views_get_view('view_name'); // view_name - имя вида
$id = $myview->add_item('block_1', 'filter', 'node', 'nid');
$item = $myview->get_item('block_1', 'filter', $id);
$item['operator'] = '>';
$item['value'] = array('value' => $nid);
$myview->set_item('block_1', 'filter', 'nid', $item);
$myview->is_cacheable = FALSE; $viewblock = $myview->execute_display('block_1');
return $viewblock['content'];
?>
вызывать код в блоке, будет добавлять фильтр в вид
Спасибо, penexe, все работает по этому способу, за исключением одного - почему-то теряется ограничение на кол-во выводимых нодов в таком блоке (у меня выставлено 2), а выводятся все ноды, у которых nid < (я вывожу с оператором <) данного. Пробовал добавить дополнительно такие записи:
<?php
$view->display['block_1']->handler->options['items_per_page'] = 2;
// или так
$view->display['block_1']->display_options['items_per_page'] = 2;
?>
Но не помогло.
Странно, в настройках вьюза указано выводить по 2 нода, а проверил, оказывается ограничение все таки вьюз делает, но почему-то 10 нод, я нигде ему не указывал такого, откуда-то по дефолту тянет, что-ли? Как с этим бороться?
$myview->display['block_1']->handler->options['items_per_page'] = 2;
после
$myview->is_cacheable = FALSE;
не прокатило?
не прокатило.
Результат попыток можно увидеть здесь: http://dance-league.com/node/371
Пока что выводит с ограничением 10 нодов и все тут...
всем Здрасти.
У меня такой вопрос. Есть нода относящаяся к двум словарям Рубрика и Выпуск. Как мне получить в views термины из словаря Рубрика в нодах которые соотвествуют и термину из словаря Выпуск.
То есть есть нода с терминами Новости и №1, как мне вытащить в блок термины из первого словаря.
За тяжелую формулировку вопроса сорри.
Есть вид и RSS вида, в ленту RSS почему-то отдается каждая запись по два раза - в чем может быть причина?
Подскажи, пожалуйста, почему не работает аяксовая листалка?
<?php
$view = views_get_view('producers');
$args = array();
print $view->execute_display('default', $args);
?>
Во views producers она включена. Так же пытался ее активизировать с помощью
<?php
$view->use_ajax = $use_ajax;
?>
Не помогло.
Так тоже не работает: print views_embed_view('producers', '', array()); ?
с тремя переменными не кажет вообще ничего.
<?phpprint views_embed_view('producers', '');?>
листался все так же без аякса.
а просто ajax листалка работает? на странице
да, по ссылке указанной в страничном вьюсе аякс у листалки работает.
очень странно, может какие-то ошибки js выдает?
проверил - ошибок нет.
куда будет вставляться файл js, если я встраиваю вьюсу в страницу? в переменную $scripts?
да, вот у меня работает и embed view и execute
но ведь $scripts выводится в шапке - то есть раньше вывода вьюс, когда о листалке еще ничего не известно.
не волнуйтесь, известно
при встраивании скрипты у меня не прописываются - подгружаемые из sites/all/modules/views/js, а также скрипт вроде
jQuery.extend(Drupal.settings, { "views": { "ajax_path": "/views/ajax", "ajaxViews": [ { "view_name": "producers", "view_display_id": "page_1", "view_args": "", "view_path": "catalog/new", "view_base_path": "", "view_dom_id": 1, "pager_element": 0 } ] } });
//--><!]]>
А мы встраиваем страничный вьюс в страницу? Может попробовать сделать блок, посмотреть, что он нормально работает (во вьюс-предпросмотре и в стд. блоках друпала), а потом пытаться вывести это программно.
Вьюс не не страничный. Страничный вьюс я не встраиваю, он сам выводится по указанной ссылке, и листалка работает корректно. Заморочки начинаются, когда я встраиваю в страницу вид "По умолчанию".
В предпросмотре все работает.
Добрый день! Вопрос как сделать вывод views без шаблона page.tpl.php, как вывод RSS. Хочу сделать пару экспортов данных в разных форматах.
http://groups.drupal.org/node/10129 посмотрите, там есть пример как писать плагин для json
Ссылку (path) можно указать только у страничного вьюс.
Остальное тоже работает (блоки)?
Да, если я к той же вьюсе добавляю блочный вид и вывожу его на странице (настроив в админве видимость блока), то аякс работает.
Может это извращение, но похоже я буду выводить вьюсу именно так... Спасибо за желание помочь.
Скрипты встраиваются только если они необходимы, в твоём случае что-то не так - вот и не встраиваются.
Дай доступ в админку, а то мы тут ещё сто сообщений напишем.
Нифига, рано сдаёмся
Давай так пробуй:
print views_embed_view('producers', 'block_0');
где block_0 - блок номер один в списке вьюс (если он у тебя не первый, а второй - block_1 ну и т.д.
Dan,
не сработало
print views_embed_view('producers', 'block_1');
попробуй, там кажется с 1 отсчет начинается.
gorr
отчет начинается с 0. вывод идет, но не подгружаются скрипты js.
WTF!
А так:
<?php
$view = views_get_view('name');
$view->init();
$view->set_display('block_0');
$view->set_pager_element(10);
$view->set_arguments(array($data->data));
$view->set_use_ajax(true);
$view->set_use_pager(true);
$view->set_items_per_page(10);
print $view->render();
?>
Лишнее (аргументы) убрать. У меня заработало.
А как сделать такое:
http://www.drupal.ru/node/27501
Привет,
А где темизируется табличный вывод? И возможно ли заменить стандартную таблицу на другой плагин jQuery?
в настройках вида Theme: Информация, там перечень файлов для темизации ищите там в Style: views-view-table.tpl.php
Ага, да. Это кажется то место где таблица темизируется, правда. А вот где она генерируется, она ведь тоже яваскриптовая?
Павел
Извините не по теме. К сожалению, Вьюз не использую, но с помощью этого модуля можно исправить баг в модуле Paging - пустые страницы, если имеется одна страница с текстом, то высвечивает и вторую, совершенно пустую. При заполнении большим контентом, например из 12 страниц текста, добавляет еще семь пустых страниц, в итоге высвечивает 19 страниц, где семь просто лишние. Помогите пожалуйста это устранить. Спасибо
Dan,
у меня аякс работает в виде (и других)
print views_embed_view('producers');
?>
если прописывать его в node.tpl.php
в page.tpl.php уже не пашет.
2ii: тема стандартная?
Последний вариант, что я написал, работает?
Dan,
да, я проверяю на стандартной теме. версия вьюс последняя.
твой вариант работает, но без аякса. если прописывать его в node.tpl.php или в форме при создании ноды - то аякс есть.
в чем отличие этих вариантов?
$view->render();
views_embed_view('default');
Помогите решить эту задачу - http://www.drupal.ru/node/27143
Спасибо!
Можно ли заменить модуль с помощью Views
он вроде меню для словарей создает, как вы собираетесь заменить его views?
Во Views же можно выводить термины словарей.
и что с того?
Акция ещё действует?
Как заменить вьюсой ПОЛНОСТЬЮ профиль пользователя.Имеется content profile+куча полей им созданная+Views
Show me the way!
2volocuga: views - это список данных одинакового типа, как правило. Ты можешь сделать список профилей - в этом смысл есть, но список полей одного пользователя... - зачем?
(Делаешь view с нужными полями, аргумент - user ID, темизируешь вывод типа материала, который "content profile")
Dan:да,уже пришел к такому же выводу.
У меня проблема со стилизацией вывода в блок.
Создал тип Expedition, создал в Views новый блок с выводом заголовка и тизера. Поставил фильтр на вывод только Expedition.
Блок нормально работает, но выглядит он как другие блоки, и нет расстояния между записями.
Не подскажете как это делается? Через отдельный файл в папке шаблона?
Guide, няйте в css
http://drupal.org/node/433304
кто-нибудь делал?
нет такого во views, надо самому писать свой display
Извините если туплюю. Но у меня еще один вопрос: Не могу понять как из блока достать переменные которые доступны на той странице в которой этот блок отображается? К примеру в типе содежимого "Пользователь" есть дополнительные поля "Всего сообщений", "Предупреждений" и "Репутация". При создании ноды по типу "Пользователь" в правом сайдбаре нужно вывести блок с помощью views, и в зависимости от параметров "Всего сообщений", "Предупреждения" и "Репутация" указать стабильность пользователя. Помогите плз
И у меня вопрос.
Делаю сайт по обмену.
Есть словарь с предметами для обмена (free tag заполняется во время создания материала). 2 CCK поля (что меняю, что хочу получить), берущие значения из этого словаря.
Собственно вопрос: как сделать в View свободный выбор по этим полям, а не выпадающий список как у меня сейчас?
Если бы словарь был подключен к материалу как обычно, то таких проблем не возникло бы. что делать?
А вот такой вопрос: есть несколько пользователей,у которых в профиле есть поле например "Город".Используется content profile.
На сайте я вывожу где-нибудь в форме поиска ссылку на вид "Пользователи из моего города".У меня напимер горо "Киев" и я хочу найти пользователя ТОЛЬКО из своего города.
В фильтрах есть опции "Равно" или "Не равно" какому-то значению,т.е значение нужно выбирать.Я же хочу просто перейти на страницу вида,где уже всё посортировано(городов может быть очень много разных)
Как сделать?
проще простого) если у вас список пользователей, то добавляете Relationship Материал: Content Profile
потом в аргументах выбираете нужное поле, сск или там таксономия..
ставите настройки
Action to take if argument is not present: Provide default argument
потом
Default argument type: PHP Code
ну а тут дело техники
<?php
global $user;
$node = node_load(array('type' => 'profile', 'uid' => $user->uid, 'status' => 1));
if($node) {
return $node->field_gorod[0]['value']; // это для примера
}
?>
только не забудте закрыть доступ к виду анонимам
Ну не так уж и просто,тем более если не знать по каким ключевикам искать.Огромное спасибо,буду дерзать!
Чёт ничего не выводиться,не мог бы взглянуть на скриншоты настройки вьюхи?
Отношения
Аргументы кусок 1
Аргументы кусок 2
вроде норм, надо смотреть запрос который получается,
проверять так ли хранятся в ноде значения города
еще, проверь просто указав аргумент в строке просмотра, возможно его надо задавать ввиде цыфры
Доброго времени суток.
Самый главный вопрос. Есть поле "Год"
И я хочу сделать через фильтр в views чтобы можно было выбирать Год от и до
и еще вопрос.
У меня имеется меню
Книги
..жанр1
..жанр2
..жанр3
фильм
..жанр1
..жанр2
..жанр3
Сделал через Hierarchical Select + Exposed Filters. Все работает.
Но если я выбираю "Книги" и не выбираю "жанр*" то мне не выдает все что в "Книги"
То есть надо выбирать именно книгу и жанр. Что есть не удобно.
Как можно сделать чтобы я мог выбрать только "Книги" и мне выдало все что в Книгах есть?
Большое спасибо.
1)если поле от date есть спец виджет.
2) меню? может таксономия?
Да поле date.
А какой виджет не можешь подсказать?
Да при помощи таксономии.
И еще один вопрос если можно.
Я делаю значит при помощи "Exposed Filters" выборку через таксономию.
Если я беру один термин, то все хорошо. Выводится все что с термином связано.
А если я делаю несколько терминов(Hierarchical Select позволяет сделать такое) то нечего не выводится.
Просто пустая страница.
Как можно сделать сделать чтобы я выбрал три термина и мне по трем терминам выдало все материалы.
Буду очень благодарен.
там же есть отдельная группа Date(Дата) в ней все настраивается, ставишь просто оператор в is between.
отключите недоделаный HS
penexe,вопрос по темизации grid view.Например,мне нужно вывести данные пользователя (это где то с десяток полей+аватарка+виджет рейтинга).В таблицу не хочу совать-некомпактно,поэтому делаю вид гридом,указываю количество колонок "1".Теперь пытаюсь рассортировать поля в 3 "кучки","кучки" идут в строку.
Поле 1 Поле 4 Картинка
Поле 2 Поле 5 Рейтинг
Поле 3 Поле 6
Если бы каждая "кучка" имела свой div-контейнер,всё было бы просто-задать каждому контейнеру отступ и float:left,а так код получается громоздкий и глючный
Можно ли как нибудь сгруппировать поля ТОЛЬКО для данного вида?
volocuga,
идешь в вид, там где список тем. в группе Row style output
будет что-то вроде views-view-fields--имя вида--page.tpl.php
это шаблон определяющий список полей, эти поля попадут в ячейку grid view
в шаблоне поля выводятся просто циклом
делай в шаблоне
<?php
foreach ($fields as $id => $field) {
$out .= '<b>$fields[\''.$id.'\']</b> = '.check_plain($field->content).'<br/><br/>';
}
drupal_set_message($out);
?>
рескан темплейтс, нужный подсветится, идешь в вид и обновляешь страницу
ну а потом какие поля надо обернешь в дивы и выведешь через print
Чёт не хочет шаблон цеплять.Беру любое неподсвеченное название из "Row style output",создаю файл в директории views\theme,жму "Rescan template files"-всё также жирным отмечен дефолтный
файл должен быть в папке с темой
Туда тоже пробовал-один хрен
Ага,шаблон цепляется,но выделен всё равно дефолтный.penexe,ты мегачеловечище и лучший друг всех нубов!Спасибо!
penexe, а как можно выводить в таблицу последнее добавленное значение поля если я пользуюсь content multigroup?
как можно отфильтровывать вывод ревизий полей чтобы подряд не шли два одинаковых значения поля?
не могу сказать, не сталкивался
[нашёл]
пытаюсь темизировать форму развёрнутых фильтров,вставляю в шаблон:
<?php
foreach ($widgets as $id => $widget) {
$out .= '<b>$widgets[\''.$id.'\']</b> = '.check_plain($widget->content).'<br/><br/>';
}
drupal_set_message($out);
?>
Это правильно,что $widgets?
выводится что то типа $widgets['filter-uid_current'] =
Как это заюзать? С полями ясно,такой снипет работает
<?php print $fields['some_id']->content; ?>
А как с развёрнутыми фильтрами?
Спасибо
volocuga, с виджетами
<?php
print $widgets['some_id']->operator;
// оператор обычно вырублен, это селект (Is equal to, Is not equal to и тд)
print $widgets['some_id']->widget;
?>
ЙОО!Воркает!
You made my day!
Всё выводится,но без лайблов.Как выводить лейблы,чёт на друпал орге я не нашёл
print $widgets['some_id']->label;
Добрый день, не подскажете как на страницу ноды (органик групс) добавить вкладку (в табы) если включен path autho
создал вид, берет аргумент из урла, вкладка появилась но она почему-то постоянно активная и ведет на главную страницу ноды
если же вести без алиасов урл (node/152/blabla) то все работает
gumk, правильно путь для вкладки надо указывать node/%/blabla
penexe,огромно благодарен.
Понемногу разбираюсь в views. Без него никуда))
Родилось пару вопросов.
Например.
Я сделал страницу где через фильтры выводятся поля из профиля пользователя.
Только выводится поля всех пользователей.
Как сделать чтобы выводилось данные из профиля текущего пользователя, тот что зашел на страницу?
И второй вопрос.
Поставил модуль usernode
И хотел вывести аватар пользователя.
Выбираю Usernode: Картинка
и нечего не происходит. Картинки нету. Аватар не ставил, но в настройках указал что выводить если аватара нету.
Тоже не пойму что делать.
Буду благодарен за помощь.
metakon, я отвечаю на вопросы по views2 + drupal6
penexe,тот код,что ты мне дал (фильтр по полю "Город") оказался вполне рабочим,я протупил с фильтрами:)
А вот ситуёвина такая:
К примеру,сайт знакомств,в анкете среди прочих 2 основных поля в виде выпадающих списков:
------------
Я:
мальчик
девочка
что-то среднее
------------
--------------
Ищу:
мальчика
девочку
что-то среднее
--------------
Отфильтровать по "мальчик-девочка-что-то среднее" элементарно,однако нам нужно 100% совпадение интересов,т.е если парень ищет девушку,ему должны предоставляться только те девушки,которые интересуются как минимум парнями.
Как сделать?
volocuga, фантазии у вас нет совсем
достаточно переименовать селекты. вот смотри
как может выглядеть фильтр
ищет: (Я)
— мальчика
— девочку
— что-то среднее
а сама кто: (Ищу)
— мальчик
— девочка
— что-то среднее
другими словами, у анкеты должны быть 2 слекта в котором юзер выбирает кто он и кого ищет.
а форму придется немного темизировать заменив окончания и название селекта
Павел, помоги, плиз с написанием субмодуля.
Дано: "Organic groups" и "OG Vocabularies". Второй позволяет создавать словари, доступные только внутри групп.
Проблема: Отображение материалов у меня построено на views, один из них использует фильтр "Taxonomy: Vocabulary", фильтр открытый (exposed). Загвоздка в том, что отображаются все словари, а не только те, что созданы внутри этой группы.
Решение: Написать свой фильтр для словаря, который будут учитывать контекст группы. Код я набросал такой (правлю модуль OG_vocab, далее перенесу код в отдельный модуль:
--- Объявляем новый обработчик (файл og_vocab.views.inc):
<?php
/**
* Implementation of hook_views_handlers() views uses.
*/
function og_vocab_views_handlers() {
return array(
'info' => array(
'path' => drupal_get_path('module', 'og_vocab') . '/views',
),
'handlers' => array(
'views_handler_filter_og_vocabulary_vid' => array(
'parent' => 'views_handler_filter_in_operator',
),
),
);
}
?>
--- Пишем для него код (взял из taxonomy_views) (файл views/views_handler_filter_og_vocabulary_vid.inc):
<?php
/**
* Filter by vocabulary id
*/
class views_handler_filter_og_vocabulary_vid extends views_handler_filter_in_operator {
function get_value_options() {
if (isset($this->value_options)) {
return;
}
$this->value_options = array();
$group_node = og_get_group_context();
if ($group_node && node_access('view', $group_node)) {
foreach ((array)$group_node->og_vocabularies as $vid => $vocab) {
$this->value_options[$vid] = check_plain($vocab);
}
}
}
}
?>
--- А вот дальше - затык. Как привязать этот обработчик к уже определённым таблицам таксономии? Вот так не работает (фильтр не отображает словари) (файл og_vocab.views.inc):
<?php
/**
* Implementation of hook_views_data_alter().
*/
function og_vocab_views_data_alter(&$data) {
$data['vocabulary']['og_vocabulare'] = array(
'group' => t('-OG-Vocab'),
'title' => t('-OG Vocabulare'),
'real field' => 'vid',
'filter' => array(
'handler' => 'views_handler_filter_og_vocabulary_vid',
),
);
}
?>
PS: в модуль og_vocab.module информацию о версии API views поместил (og_vocab_views_api()....)
Dan, мб так?
<?php
function og_vocab_views_data_alter(&$data) {
$data['term_data']['og_vocabulary'] = array(
'title' => t('OG Vocabulary'),
'help' => t('Filter the results of "Taxonomy: Term".'),
'real field' => 'vid',
'filter' => array(
'handler' => 'views_handler_filter_og_vocabulary_vid',
),
);
}
?>
Да,решение действительно простое и на виду.Тока подумать чуток надо было.Спасибо!
как задать значение в exposed фильтр п умолчанию при выводе старницы
те заходим на стр а там уже в 1 из фильтров задано значаение и по нему выводится список результатов
cosmos, через url задавай
Как сделать блок с материалами, у которых определенное поле совпадает? То есть например есть поле автор, при просмотре ноды с полем автор "иванов" выводился вид всех материалов, у которых это тоже автор "иванов". Что-то со связями никак не разбирусь - выводит всё подряд, а не только Ивановых (
jason32,
решение описано тут чуть выше в коментах, только аргумент надо поменять на сск, а в пхп коде
делать node_load(arg(1))
http://drupal.ru/node/26420 #comment-151585
Ссылка не отобразилась, но как я понял речь про отображение всех материалов пользователя. Я понимаю, что через аргументы и php - только я не знаю точного формата во Views2. Пишу примерно так:
<?php $base_node=node_load($argument);
$f=$base_node->field_trainer;
if ($view->field_trainer==$f) return true; else return false;?>
- не работает. Сравниваем как раз по полю field_trainer, которое я к тому же вывел в полях для удобства. Как правильно, никак не пойму, в какой переменной находится текущая нода, которую надо выбрать или не выбрать в зависимости от значения поля field_trainer? Это $node может? Как обратиться то к текущей ноде?
jason32,
в ссылке пробел уберите и попадете на нужный коммент, а код такой
<?php
$nid = arg(1); // это есть надо выводить блок на странице ноды
$node = node_load($nid);
if($node) {
return $node->field_trainer[0]['value'];
}
?>
не работает такой код, вообще не цепляет аргумент, когда внизу вводишь один из аргументов, то без вопросов, а из ссылки аргумент не берет. Код написал вот такой, работает, если есть аргумент, но его нет ((.
<?php $base_node=node_load($argument);
if (!empty($base_node->field_trainer)) {
$handler->argument=$base_node->field_trainer[0]['nid'];
return $handler->argument;
} else return false;?>
Внизу пояснения для поля:
Введите PHP-код, который вернет TRUE или FALSE. Если код не вернет ничего, то это будет как FALSE, так что проверяйте - возвращаете ли вы значение, если вы не хотите, чтобы аргумент был признан некорректным. Не используйте <?php ?>. Аргумент для проверки - это "$argument", а представление - "$view".Можете изменить аргумент, установив "$handler->argument".
Если использую arg(1) - вообще ничего не выводится, походу просто не знает эту функцию может? Может тут связи нужны какие-то?
Ссылка неверная, даже если убрать пробел - http://drupal.ru/node/26420 #comment-151585, не попадаю я ни на какой коммент
короче проблема локализовалась. Код работает, но не цепляет аргумент при отображении ноды, то есть например на ссылке node/55 не отображается блок с правильными полями, а создал страничный вид для страницы veds, и на странице veds/55 всё правилно выводится. То есть проблема с блоком - он не цепляет $argument, и не цепляет arg(). Так как же ему скормить число 55 ?
jason32,
мда, код надо писать не в валидатор. раз уж не можете прочитать тот коммент продублирую его.
Action to take if argument is not present: Provide default argument
потом
Default argument type: PHP Code
вот туда мой код вставлять, в Validator options Basic validation
решилось установкой
Тип аргумента по умолчанию: ID материала из URL
, а код приведенный выше оставил какой есть. Так заработало. Попробовал вставить php код сверху, и базовую проверку - всё равно не работает.Возможно - нужны какие-то связи? Паршиво, что такие несостыковки с языками.Создан глоссарий по терминам словаря. В качестве терминов "Имя Фамилия" людей.
Вопрос: как сделать группировку не по первой букве терминов, это получается по Именам, а по Фамилиям, т.е. по первой букве после пробела?
mac3k, никак скорее всего
И мне подскажите ответ на
Возвращаясь к выводу доступных полей в шаблоне развёрнутых фильтров
Этот сниппет выводит только поля
<?php
foreach ($widgets as $id => $widget) {
$out .= '<b>$widgets[\''.$id.'\']</b> = '.check_plain($widget->content).'<br/><br/>';
}
drupal_set_message($out);
?>
как вывести кнопку "Go"? Спасибо.
<?php print $button; ?>
Да не часто такие топики (в плане концентрации вопрос-ответ) увидишь! Респект стартеру!
Вопрос:
Имеем вью, которая выводит по 10 нод на страницу (ноды - коротенькие стишки). Возможно ли после каждой ноды во вью вставить форму (свернутую) с полями для ввода мыла, темы и кнопки для отправки этой ноды по электрической почте? или какое другое красивое решение есть?
простое решение врятли есть, тем более с views, надо писать небольшой модуль под задачу
IPlayer, также можно в шаблон для вьюза вписать нужную форму после каждого рядка с выводом ноды.
Например форму можно сделать с помощью webform модуля. И потом вставить в шаблон для row вьюза после вывода необходимых полей, которые вьюз сам выведет node_view(node_load($form_nid));
Можно это дело завернуть в свернутый блочок еще и т.д.
О, спасибо за идею.. сразу вопрос... у меня, получается должно быть 10 форм однотипных на странице. Мне надо будет 10 форм делать с разными ид или одной будет достаточно? я просто с формами пока дела не имел...
Ну если одинаковые абсолютно, то можно и одну.
А вот еще модуль, если не хочется шаблон для вьюза править - то, что нужно. Позволяет добавлять ко вьюзу любые поля, в которые можно включать и пхп скрипты для вычислений, для которых доступны данные из базы, выведенные вьюзом. Можно и формы любые вставить.
http://drupal.org/project/views_customfield
Ну я уже Ваш вариант (с правкой шаблона) попробовал. В принципе то, что хотел - получилось. Но и этот модуль посмотрю. Спасибо.
Conditional fields, есть что нибудь подобное для вывода полей exposed filter. Что бы поля фильрации выводились по такому же принципу как в этом модуле?
Где можно найти исчерпывающую информацию о интеграции в views сторонних модулей?
Guide,
http://views.doc.logrus.com/ - доки, в описаниях хуков можно найти код с примерами
http://views-help.doc.logrus.com/ - хелп
http://groups.drupal.org/views-developers - группа
также дефолтные файлы node.views.inc, в них много полезных комментов
AkeLLbl4, наврятли
penexe Спасибо большое, буду читать.
значит для каждого типа будем создавать свой поиск ((((
Продолжаем постигать.....
Есть вью. У нее есть аргумент TermID. Во вью можно задать Title для страницы только с использованием термина таксономии который в аргументе. А у него есть 1-2 родителя и мне необходимо что бы в Title страницы была вся цепочка: Термин1 | Термин2 | Термин3. Как заполучить родителей?
Сам задал вопрос - мне и отвечать походу
Сделал вот такой хук и к нему впридачу функцию построения заголовка.:
$view->display_handler->set_option('title', pz_build_title($args[0]) );
}
function pz_build_title($tid_) {
$term_=taxonomy_get_term($tid_);
$title=$term_->name;
while (1) {
$parents=taxonomy_get_parents($tid_);
if (count($parents)==0) {
break;
}
$title = reset($parents)->name .' | '.$title;
$tid_= current($parents)->tid;
}
return($title);
}
подскажи с exposed form in block
создаю блок с закрытыми фильтрами + один раскрытый в виде выбора термина словаря таксономии, помещаю блок в колонку.
При попытке фильтровать новости на странице по термину блок передает браузеру значение ?tid=%
%-номер термина таксономии.
При этом никакой фильтрации не происходит.
Подскажи что не так.
В профиле пользователя сделал выбор места жительства через таксономию и Hierarchical Select, как описано здесь.
С помощью Views сделал вывод краткой информации обо всех зарегистрированных пользователях. Пытаюсь прикрутить выборку по регионам.
В связи с этим такой вопрос: можно ли каким-нибудь образом ограничить список терминов в exposed фильтре только теми городами, которые были выбраны пользователями, чтобы не грузился список всех городов, какие только есть в словаре?
chimkentec, стандартными средствами views это не решить.
надо делать свой обработчик для фильтра либо идти путем изменения формы через hook_form_alter
penexe, большое спасибо! Вы сэкономили мне кучу времени.
penexe,мне нужно в профиле вывести блок с аватарками (аватарки в виде поля imagecashe) пользователей,кто смотрел этот профиль.
Можно ли вьюсами сделать такой блок?
Спасибо.
volocuga, по дефолту нет, нужен какой-то модуль считающий юзеров
может http://drupal.org/project/user_visits поможет
Этот только считает,мне же нужно чтобы и аватарки выводило
Хотя... тут http://drupal.org/node/375097 что то про imagecache
Вопрос: можно ли реализовать через views вывод персональной формы контактов пользователя в зависимости от его принадлежности к домену созданному через модуль domain с включенным Domain Views + Domain User
Последний связывает выделенные поддомены с пользователями.
Получается, что domain интегрирован с views, но предоставляет только фильтры - id домена и т.п. - а среди аргументов чего-либо похожего не наблюдается.
Подскажите, пжта, можно ли как-то сделать, чтобы в меню была ссылка типа "Контакты", но на каждом поддомене это были свои контакты, контакты владельца поддомена к которому он привязан через Domain User
Domain предоставлялет API, включая domain_user.module, но я не особенно силен в программировании (чую без этого не обойтись в данном случае) хотя... потому и спрашиваю.
Помогите, пжта.
А как сделать отображение всех постов, которые принадлежат группам, и которые не пренадлежат? (тип материала один и тот же)?
gumk, лучше разделить типы, дешевле выйдет
У меня сложилась такая ситуация.
Надо вывести в панели 6 вьювов у которых стоит аргумент на user id
Хочу сделать одну панель и туда кинуть 6 вьювов и чтобы у панели не было четкого адреса, чтобы аргументы работали с панелью и по разным ссылкам эту панель выводило с применением аргументов.
Возможно ли это?
Может вопрос тут больше про панели, но я не пойму в чем бок у меня, либо панели ковырять или ковырять вьювы.
Интересует мнение.
спасибо.
metakon , возможно
penexe, подскажи что-нибудь на счет фильтра в блоке...
Не посмотрите мой вопрос, а точнее каменты в самом конце? http://drupal.ru/node/29934
В 6-ке не знаю, а 5-ке пришлось писать для этого фильтр самому, в коробке нету. Видимо только руками
Views+CCK
В представлении не отображаются поля cck.
Стиль вывода таблица.
В чем может быть проблема?
табличный вывод использует поля. Выбери поля, которые тебе нужны.
Поля выбраны, так вот их содержимое не отображается.
хочу добавить определенный процессинг ко views (если конкретнее, менять сортировку основываясь на переменных из $_SESSION)
Так вот, запарился - все изменения которые я делаю в хуке модуля как будто не применяются. Функции вызываются, точно.
пробовал hook_views_pre_execute, hook_views_pre_view:
Элементарный код:
<?php
function site_helper_views_pre_view (&$view,&$display_id,&$args) {
drupal_set_message('called pre_view ' . $view -> name);
$view->display_handler->set_option('title', 'we' );
}
function site_helper_views_pre_execute(&$view) {
drupal_set_message('called pre_execute ' . $view -> name);
$view->display_handler->set_option('title', 'we' );
}
?>
никаких изменений в реальном отображении, чисти кеш-не чисти толку нет..
2restyler
Менял сортировку в exposed-форме, основываясь на строке запроса. Тебе думаю можно делать аналогично, только брать не из $_GET, а из $_SESSION.
Сама форма фильтров у меня изменена функцией function МОДУЛЬ_form_views_exposed_form_alter( &$form, &$form_state )
Вот кусок:
<?php
function МОДУЛЬ_views_query_alter(&$view, &$query) {
// имя views -- competitors
if($view->name == 'competitors'){
// в форму добавлен выпадающий список сортировки - дата, рейтинг,...
if(isset($_GET['custom_sorting'])){
switch($_GET['custom_sorting']){
case 'date':
$query->orderby[]= 'node_created DESC';
$query->fields['node_created'] = array('field'=>'created', 'table' => 'node', 'alias' => 'node_created' );
break;
...........................
default:
}
}
}
}
?>
ага, так получилось, спасибо! во views как копнешь так и не раскопаешься)
интересно конечно, почему через мои хуки не работает..
Вывожу фильтр по таксономии, термин необязателен при фильтрации,но система по умолчанию ставит первый термин из списка. Мне же нужно, чтобы при заходе на вид термин был не выбран и можно было его выбрать( или же не выбирать вообще). Никак не могу найти подобную настройку, уже все перерыл
так никто и не знает, даже автор топика?
jason32, в настройках фильтра
Галочка стоит и так. Убирание её лишает пункта "Любой" в списке, что неправильно. Поясняю ещё раз - по умолчанию должен стоять именно этот пункт, чтобы при заходе на фильтр отображались все возможные варианты, без фильтрации. Не помогло, короче
ну он и стоит, обновите views до последней может там работает.
либо какие-то модули "влезли" в этот механизм
Никаких вроде модулей нет, версия последняя, но вох и ныне там - выбирается автоматом первый сверху пункт, а не "Любой". Есть варианты, как побороть?
Помогите, пожалуйста, решить задачу с помощью views. Имеется тип материала, в котором есть 4 числовых поля: день и месяц начала сезона, день и месяц конца сезона (без указания года, т.е. сезоны ежегодно в одно и то же время). Использовать date для этих целей не удалось, т.к. в дате никак нельзя уйти от привязки к году. Например: начало сезона 1 мая, конец — 15 сентября:
field_from_month_value = 5;
field_to_day_value = 15;
field_to_month_value = 9;
Нужно вывести только те материалы где текущая дата попадает в диапазон между началом и концом сезона. Например, если сегодня 1 апреля, то приведённый сезон выводить не нужно, а если 15 мая — то нужно. Пока решил с помощью php-блока:
<?php
$sql = "SELECT np.nid, np.title, n.title as season
FROM node n, node np, content_field_parent p,
(
select s.nid,
MAKEDATE(YEAR(CURDATE()),1) + INTERVAL s.field_from_month_value - 1 MONTH + INTERVAL s.field_from_day_value - 1 DAY as d1,
MAKEDATE(YEAR(CURDATE()),1) + INTERVAL s.field_to_month_value - 1 MONTH + INTERVAL s.field_to_day_value - 1 DAY as d2
from content_type_season s
) s
WHERE s.nid = n.nid
AND n.nid = p.nid
AND np.nid = p.field_parent_nid
AND ((d1 <= d2 AND CURDATE() BETWEEN s.d1 and s.d2) OR (d1 >= d2 AND CURDATE() NOT BETWEEN s.d2 and s.d1))"; $result = db_query_range($sql, 0, 10);
while ($node = db_fetch_object($result)) {
$output[] = l($node->title, "node/$node->nid") . ". $node->season";
}
print theme('item_list', $output);
?>
Хотелось бы использовать views, т.к. кроме блока нужна ещё и страница со списком всех сезонов. Да и удобнее через views редактировать. Помогите.
по видимому мой вопрос таки поставил уважаемого гуру в тупик. Повторю ка я его ещё раз:
Вывожу фильтр по таксономии, термин необязателен при фильтрации,но система по умолчанию ставит первый термин из списка( хотя выше есть пункт <Любой>) . Мне же нужно, чтобы при заходе на вид термин был не выбран и можно было его выбрать( или же не выбирать вообще).
Поясняю ещё раз - по умолчанию должен стоять именно <Любой> , чтобы при заходе на фильтр отображались все возможные варианты по данному фильтру, без фильтрации.
Никак не могу найти подобную настройку, уже все перерыл.
Как перекрыть стандартный вывод taxonomy_term и pathauto в views ?
выводить вид вместо друпальной страницы из таксономии? путь указать taxonomy/term/%
и аргумент.
написать модуль, используя hook_taxonomy который будет генерить нужные алиасы
а просто "забить" стандартный (чтобы он не работал)хуком _menu() только? Так было бы проще...
Странно, почему views не отлавивает страници и аргументы таксономии от патчауто вида /tax/ma_slovar/termin, от материалов же прекрасно работает /my_type_meterial/name?
двухуровневая таксономия. Группируем по второму уровню, выводим нумерованным списком материалы, которые лежат там. Как отгрупировать по первому уровню без правки шаблонов вывода? То есть:
Животные
-- Кошки
-- Собаки
Птицы
-- Соловьи
-- Попугаи
-------------------------
Как сделать вывод материалов так же, чтобы группировалось термины второго уровня( Кошки, собаки) группировались внутри своих родителей, а материалы уже группировались внутри них. Сделал только второе первое делаю через шаблоны( что не очень получается), но может есть какой-нибудь изящный способ?
уточню задачу. Есть два поля. Надо сначала сгрупировать по одному полю( первый уровень таксономии вывел в поле computed field), а потом по второму. Не нашел нигде такого.
jason32, особо не вникал, но возможно тут похожие задачи http://drupal.org/node/336014 (модуль [module=views_customfield])
Нет, это не то. Но за ссылку спасибо, модуль пригодится
А вот ещё вопросик.Установлен модуль content profile,то есть теперь каждый профиль пользователя=нода.К этим нодам профиля прикручена ссылка "Закладки" (используется модуль "flag").Теперь каждый пользователь может добавлять другого пользователя в свои закладки
Задача:Вывести топ пользователей,которые встречаются в закладках других пользователей наиболее часто.С фильтрами,сортировкой понятно,но тут не обойтись без аргументов...
аргументы то зачем?
На мой вопрос есть ответ?
надо писать свой модуль
Чем из модулей лучше на карте выводить точки через views?
Ещё вопрос, как добавить фильтр по нескольким параметрам (аналог http://drupalmodules.com вверху)?
И снова я,страждущий...
Вопрос касается views 1,но,возможно,направите на путь истинный.
Итак,есть вид taxonomy/terms/term_ID,для него развёрнутый фильтр с терминами словаря,например "Производитель".Если я отрываю например категорию "Телевизоры",я получаю только телевизоры.Теперь хочу отфильтровать телевизоры "Sony",но получаю из выпадающего списка ВСЕХ производителей,которые есть на сайте.
Как динамически ограничить показываемые термины в развёрнутом фильтре только теми,которые подходят для данного продукта?
http://drupal.ru/node/33502 очень хочется побороть
Добрый день, очень нужен совет-разъяснение по поводу переопределения вывода терминов.
Необходимо создать несколько разных представлений, для разных терминов. Используя стандартное представление taxonomy/term/% мы заменяем все термины из всех словарей. Видимо можно назначить отдельным терминам вьюс используя прямой адрес к термину (taxonomy/term/13). Но, что делать если таких терминов несколько, а что еще более страшно количество их изменяемое. Я использую для терминов определенного словаря (его термины должны иметь свой вид, отличный от вида других терминов в других словарях) автоалиасы типа brand/[cat-raw], но вьюс не понимает адрес brand/%.
Объясните плис, как быть в такой ситуации, что можно сделать...
Заранее, большое спасибо.
модуль taxonomy_redirect
вам надо выделить словарь брендов и сделать для них другое представление, тогда в настройках модуля выберите нужный словарь и укажите путь brand/!tid, ну а потом views2 будет принимать путь brand/%
спасибо)
только пока не помогло, что то страшное произошло после включения этого модуля и после введенных настроек. Облако тегов, выводящее термины этого словаря, перестроилось и теперь отображает все наоборот, там где больше материала выглядит намного меньше того где нод немного. Кроме того не работают ссылки на термины (страницы недоступна).
Может мешает autopath?
проблему так и не решил. taxonomy_redirect поставил как и сказали для словаря brand/!tid
Мне кажется проблема с autopath. При настройке [tid] он добавляет к алиасам (-0), получается адрес типа brand/9-0
если вручную изменить на brand/9 (стереть -0), то алиас работает.
Из просмотра синонимов:
brand/9 taxonomy/term/ - это видимо taxonomy_redirect создает, при этом ссылка не работает.
brand/9-0 brand/9 - autopath заменяет
Проблемы ву алиасах, разберитесь, кто что создаёт. taxonomy_redirect алисы _не_ создаёт! Он устанавливает обработчик для термина по существующему системному пути.
Мда,а я то бился с этим стандартным taxonomy/term.Всё же часами втыкать в форумные посты полезно,проскакивают озарения
Отчего могут не дружить Аргументы с Фильтрами? По отдельности все работает - вместе нет.
больше инфы, больше...
К материалу привязано 2 словаря.
Первый в фильтры (Таксономия: Термин ID), второй в аргументы (Таксономия: Синоним термина).
По отдельности - всё ОК. Как вместе - траблы.
При аргументах = Таксономия: ID Термина оба словаря работают...
Думал, может особенность есть совместного использования.
Полез смотреть разницу в генерируемых запросах...
должно работать, сам проверил. а в чем траблы? неправильный запрос в бд?
или просто ничего не выводится?
FROM node node
INNER JOIN term_node term_node ON node.vid = term_node.vid
INNER JOIN term_synonym term_synonym ON term_node.tid = term_synonym.tid
WHERE (node.status <> 0) AND (node.type IN ('story')) AND (term_node.tid = 170) AND (term_synonym.name = 'test')
К отфильтрованному добавляем какой-то воздух...
PVasili, был неправ и вправду так не работает
но вот при галочке в аргументах Allow multiple arguments to work together работает
Views не распознаёт конструкцию вида /taxonomy/term/1,2,3?
Стоят два аргумента: "Таксономия: Term ID (with depth)", "Таксономия: Term ID depth modifier". Со вторым понятно, проблемы с первым:
- установлена опция валидации и проставлен параметр "Term IDs separated by , or +"
При таком раскладе, views формирует:
...(SELECT tn.vid FROM term_node tn WHERE tn.tid = 1)...
Если включить опцию "Allow multiple terms per argument", то:
...(SELECT tn.vid FROM term_node tn WHERE tn.tid IN (1,2,3) )...
То есть выборка идёт по ИЛИ, хотя путь указан по И (1,2,3). В описании опции так и написано: "If selected, users can enter multiple arguments in the form of 1+2+3. Due to the number of JOINs it would require, AND will be treated as OR with this argument."
Засим вопрос: возможно ли заставить views обрабатывать термины по И?
Всем привет.
Подскажите как в Views2 сделать табличное представление?
Style: Table
Не могу найти где это находится...
Нашел! Спасибо penexe!
Здравствуйте всем!
Надо переделать трекер - добавить новую колонку: "Материал: Автор последнего комментария", и, чтобы это поле ссылалось не на профиль юзера, а на последний комментарий или подменять ее ссылку с поля "Материал: Новые комментарии".
Подскажите плиз, как подобное сделать.
Как вывести вьюсами топ авторов?Для форума.Суммировать (или на крайняк просто комментарии) количество созданных нод (топиков) и количество каментов,созданных пользователем.В лоб,клацая мышкой не получилось.
Нашёл нечто похожее http://drupal.org/node/302030,но здесь без аватарок (добавить не могу,т.к не дружу с пхп) и нет гибкости.
Спасибо
Не подскажете как вывести связи пользователей и самих пользователей попарно которые взаимосвязаны - модуль взаимосвязей user relationships. Заранее спасибо
подскажите, реально ли , о чем я спрашиваю
http://drupal.ru/node/35432
этой теме
Как в exposed фильтре вывести селект с терминами определенного словаря, которые находятся на определенном уровне иерархии?
Конкретно - мне нужно организовать форму поиска товаров одно из полей которой - производитель. Производители у меня представлены терминами таксономии, причем стоят они на втором уровне иерархии. Первый уровень - вид товара, второй - наименование производителя, третий - коллекция производителя. (Еще одна сложность - это то, что один производитель может иметь нескольких родителей, то есть выпускать несколько видов товара). Вот такая жопа.
Отмечу, что искать мне нужно именно по производителю. Вид товара и коллекция производителя в селекте отображаться не должны.
Есть представление, в котором сделан фильтр по терминам таксономии. Как ограничить выпадающий список только теми терминами, которые на текущий момент использованы в нодах?
Доброго времени суток... Мучаюсь с вкладками на views_tabs. Подскажите как реализовать: sitename.com/portfolio тут должно быть три вкладки с со слайд шоу на лайтбокс. На одну ноду все нормально выводится...а вот как вкладки реализовь с помощью views_tabs никак понять не могу... Я еще не очень шарю в views так что пожайлуйста попдробнее... Очень буду благодарен... и еще в английском не силен...
Вместо views_tabs я бы рекомендовал [module=quicktabs] - он универсальнее и функциональнее.
А по поводу views_tabs - посмотрите в "Основных настройках" "Стиль" и "Стиль строки" - скорее всего там. Ну в "Administer › Site configuration › Views Tabs" на всякий случай.
Спасибо посмотрю. В "Administer › Site configuration › Views Tabs" все включил. В основных настройках > есть "Views Tabs" но каким макаром они настраиваются не понятно... как не мучился или пустой результат или ошибку выдает. Как я понял там прикол с аргументами... но как его настроить не понятно... помогите плиз...
Такой вопрос: на сайте таксономия организована так:
Словарь местоположение:
Термин Уфа
-термин улица Ленина
-Гоголя
-Глинки
Термин Москва
-улица Пушкина
-Лермонтова
-Чехова
Добавить в exposed фильтр поиск по улицам - не проблема. Включил фильтр и все. Но как по городам? Может, с аргументами как-то замутить?
Допустим, нужны все материалы со старшим терсином "Уфа".
Или как-то сделать, чтобы пользователь изначально город выбрал где-то, а эту форму убрать...
Есть советы?
penexe,если не затруднит:
Показать только связанные термины из другого словаря
http://www.drupal.ru/node/39236
Стоит задача: вывести через views популярные пути за определенный период.
Для подсчета статистики использую visitros http://drupal.org/project/visitors
Для использования таблиц модуля visitors воспользовался модулем Table wizard. Для подсчета использовал Views GroupBy.
Все отлично: выводятся популярные пути в порядке убывания.
Но есть одна трабла. Не могу сделать выборку за определенный период.
Так как в таблице visitors дата-время хранится в unixtime и тип данных поля int.
1. То есть views не воспринимает это поле как дата и соответственно к нему применить фильтры для даты.
2. Необходимо сделать выбору за определенный период. А фильтрах можно прописать только определенные значения.
Модуля формирующего фильтры динамически из php я не нашел.
Есть материал http://drupal.org/node/70145. Но это для 5-й версии.
Еще http://drupal.org/node/335037 и http://drupal.org/node/550886. Не заработало.
Еще есть вариант модифицировать SQL-запрос на лету http://www.drupal.ru/node/29934.
Как сделать динамические фильтры для views2/drupal6?
rujet, а нельзя ли в таблице tw_columns значение coltype поменять с int на datetime? только кеш вьюсов сбросить.
Ну и мне уже помогите http://www.drupal.ru/node/40256
Помогите новичку, плиз
Делаю магазин на ubercart, вывожу через обычную таксономию, views прикручен
с помощью CCK добавил тип продукта и текстовые поля характеристик, например field_size1,field_size2 - размер и field_color1, field_color2 - цвет, ввожу их при создании материала
нужно: что бы пользователь при заказе мог выбрать цвет из 2-х и размер из 2-х вариантов и соответственно что бы все это в корзине отображалось.
Знаю, что нужно делать через аргументы к views, а как, не знаю. Расскажите, плиз поподробнее и куда эти аргументы вставлять?
заранее благодарен
BurnRam, копайте в сторону UC Attributes, views тут непричем
Нет, я не нашел как менять тип данных в table wizard .
Я пошел другим путем.
http://groups.drupal.org/node/10129
Нашел как обращаться к фильтрам из php.
И в блоке набрал такой php-код:
//Обращаемся к views
$view = views_get_view("popular_node");
//Выбираем дисплей
$display_id = "page_1";
$view->set_display($display_id);
//Что то делаем с кэшем
$view->is_cacheable = FALSE;
//Назначаем фильтр минимальную дату - 36 часов назад
$view->display[$display_id]->display_options['filters']['visitors_date_time']['value']['min']=time()-129600;
//Назначаем фильтр максимальную дату - текущую дату
$view->display[$display_id]->display_options['filters']['visitors_date_time']['value']['max']=time();
//Выбираем сколько строк войдет в выборку
$view->display[$display_id]->handler->options['items_per_page'] =10;
//Вывод views
print $view->preview($display_id);
?>
Замечание. Фильтры уже заведены в дисплее. Все параметры которые меняются, обязательно должны быть заведены в самом дисплее (в моем случае page_1). А не браться по умолчанию из дефолтового дисплея.
penexe
Будем копать. Только вот где? Инфы катастрофически мало...
Темизирую exposed фильтр. Нашел на форуме, что нужно найти в папке модуля файл views-exposed-form.tpl и переместить в папку темы. Сделал. Изменяю - нет реакции от сайта.
Во что его стоит переименовать? Жал на reskan template files, нет там ничего со словом exposed...
digital_sword, кеш чистили? попробуйте создать views-exposed-form--имя_вида.tpl.php
Ну точно! Кэш. Торможу. Спасибо!
Вопрос по навеске уникальных стилей, как можно навесить стиль = машинному имени поля (ну или другому слову)?
Я вижу, как в этом файле создается описание метки, где описан ввод exposed поля. Но как этот класс вставить, какой переменной?
либо я туплю, либо там в цикле есть переменная $id
есть словарь:
Мужская парфюмерия
-Armani
-Boss
-Lacoste
Женская парфюмерия
-Balmain
-Celine
-CK
Можно ли сделать views который , например, будет показывать на странице с url вида man/B
-Boss
с условием что с термином Boss связаны какие-либо ноды?
Как убрать заголовок пустого поля?
т.е. для пользователя выводится и полле и заголовпк для гостя не выводится поле и не должно выводится заголовок этого поля. а он выводит... куда копать.
Подскажите как выбрать только родительские термины к которым привязана хоть 1 нода ?
Как сделать чтоб по умолчанию, если expose поля пустые выводить пустой view
http://druhelp.ru/views/cookbook/vyvod-pustoi-stranitsy-pri-ispolzovanii...
спасибо penexe, попробую
и еще один вопрос -- а есть ли возможность сделать общее поле выборки для нескольких определенных полей ?
http://drupal.ru/node/37710
Что за поле delta в новых Views -ах?
на org судя по результатам поиска уже многие пользуют - а я никак не могу понять для чего оно.
Те кто знает что это - расскажите.
Если это в пейджере, то далеко не новый параметр.
Используется в случае нахождения на одной странице нескольких списков с "листалками".
Нет, я про поле (field), оно появляется для Taxonomy полей CCK материала. вышлядит как "Content: Название поля (тип поля) - delta"
это скорее всего для полей с множественными значениями
да - точно - так вернее
а какое предназначение у этой "delta"?
Что с помощью неё можно сделать? На(самый простой)пример
Подскажите, если я делаю фильтрацию Таксономия:Term выводятся поля "оператор" и "значение", куда вводится значение вручную... как сделать, чтобы не вбивать значение вручную, а выбирать из словаря?
Selection type: Dropdown
Нет настроек фильтра чтобы выбрать Selection type: Dropdown, как их можно добавить?
Все, спасибо, разобралась!
Имеится views и date.
Создана вьюха сортирующая ноды по времени.
Как сделать чтобы если число в поле datestamp совпадало с сегодняшним отображалось не число а надписью "Сегодня" и аналогично "Завтра"
Заранее спасибо за помощь!
в шаблон для поля
$now = time();
$data = $row->{$field->field_alias};
$today = format_date($now, 'custom', 'Y|n|j');
$date = format_date($data, 'custom', 'Y|n|j');
$tomorrow = date("Y|n|j", $now + 86400);
if($date == $today) {
print 'Сегодня';
}
elseif ($date == $tomorrow) {
print 'Завтра';
}
else {
print $output;
}
подскажите, пожалуйста, как добавить в exposed filter критерий по возрасту - "щенок" (до года), "подросток" (от года до двух) и "взрослый" (от двух лет), если в таблице хранятся даты рождения?
без своего обработчика фильтра не получится сделать.
Никак, у вас храняться один тип данных, а нужен вам другой.
Или писать свой модуль, который будет делать преобразование в фильтре views или в материале заводить computed field в котором хранить возраст и делать по нему фильтр "от и до" или "между".
penexe СПАСИБО =)))
Сделал шаблон для сегодня и завтра, но вот формат даты не выставляется и выводится криво. Деньнедели/Месяц/День/Год
http://avto-kino.ru/afisha
Как выставить человеческий формат, типа "d. m. Y - l"
Ковырял настройки поля даты, но похоже вопрос во вьюсах.
Поковыряйте ещё раз. Формат вывода поля даты можно менять.
Возникла загвоздка. Пробовал сам не входит. Может быть вьюхой это и не делается.
Задача вывести одну вьюху для двух рлей (гости и залогиненые) по разному...
разница заключается в следующем.
у гостей должно быть 5 элементов на страницу вьюхи и не должно быть страниц (постраничного вывода)
а у залогиненых по 10 элементов и со страницами.
И снова проблема на ровном месте.
Сделать две вьюхи и выводить в зависимости от роли, в регионе или в темплейте
Т.е. должна быть дефолтная + 1 для гостя + для юзера
я просто дефолтную на гостя делал и другую на юзера...
или вы имееете что-то другое под фразой выводить в зависимости от роли? это выставляется в строчке Доступ:
где можно выбрать... роли.
Все готово. Спасибо.
Я через вьюха скк сделал фотогалерею...
решается ли вьюхой количество фотографий (нод) в галереи для гостя определеное число, для зарегеных - полностью
кажется что это решается снипетами и они прикручиваются куданить в скк
Сделал во вьюхе, но эффекта который хотел не произошло, просто визуально убрались скрылись с глаз долго большее количество нод...
А можно ли во вьюху засунуть 2 типа материала в 2 колонки ?
если не сложно посмотри, может подскажешь
возможно собрать вьюху по следующим полям...
никнейм и где в данный момент находится на сайте.
мерси. о гуру.
Имеется тип материала Книга, у него есть поле типа image (фотка книжки)
Никак не получается вывести все книжки без фото.
Вo views1 все просто, я устанавливал оператор 'has image' для фильтра "Image: Изображение (field_book_image)" в значение нет и все.
Во views2, имеется фильтр "Содержание: Изображение (field_book_image) - list", у которого 2 значения Истина и Ложь. При выборе Ложь, представление возвращает пустой результат. При выборе Истина показываются книги с фото.
В общем, книжки с изображением я выбрать могу, а без - нет ((
В Relationships выбрать связь с таблицой вашего поля (Require this relationship галку не ставить, Delta = 1), потом в фильтре File: File fid выбрать значение Not empty
Спасибо огромное!
Получилось, единственное в фильтре (imagefid) Файл: ID файла , как раз Empty, нужно было.
Есть ли возможность во вьевс2 вывести следующее:
1.
заголовок материала конкретного типа с результатом голосования текущим пользователем...
т.е. пользователь отдавал голоса за материалы +1 или -1
необходимо вывести заголовок материала (определенного типа) с результатами голосования текущего пользователя ( просматривющий страницу).
2.
а лучше всего может ли с вьюхой следующее сделать
на странице в выпадающем меню все заголовки типа материала за который голосвал текущий юзер) и пр и выборе чего то из списка выводило бы список пользователей которые также проголосовал.
всё можно
не применяя кодинга? не подскажите на чем нужно заострить внимание при формировании вьюхи.
Имеется табличное представление - выводится несколько таблиц которые сгруппированны по термину таксономии присвоенному ноде.
в примере есть 3 сгруппированных таблицы, -=цифры=- результат вывода строки
print $count; в темизированном views-view-table.tpl.php
Как нибудь можно докопатся до TID термина (ов) по которым осуществляется группировка таблиц.
Сейчас я это делаю с помощью такого кода в темизированном views-view-table.tpl.php
<?php print "<a name='".strip_tags($title)."'></a>"; print $title; ?>
<?php endif; ?>
<table class="<?php print $class; ?>">
<thead>
<tr>
<?php foreach ($header as $field => $label): ?>
<th class="views-field views-field-<?php print $fields[$field]; ?>">
<?php print $label; ?>
</th>
<?php endforeach; ?>
</tr>
</thead>
<tbody>
<?php foreach ($rows as $count => $row): ?>
<?php print "-=".$count."=-"; ?>
<tr class="<?php print implode(' ', $row_classes[$count]); ?>">
<?php foreach ($row as $field => $content): ?>
<td class="views-field views-field-<?php print $fields[$field]; ?>">
<?php print $content; ?>
</td>
<?php endforeach; ?>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<?php
foreach ($view->result[$count]->node_data_field_note_field_note_value as $notes_arg) {
$notes_args .= "+".$notes_arg[value];
}
if ((substr($notes_args,1)) != "") {
print views_embed_view('notes', 'default', substr($notes_args,1));
}
?>
в куске кода между последними PHP тэгами я использую переменную $count, но при таком способе не получится поместить эти строки до того места как эта переменная была задана, к тому же даное решение кривовато, может быть есть более элегантный способ достучатся до TIDа термина по которому делается групировка таблиц во вьюхе.
решил вопрос заменой значения $count
на значение первого элемента массива возвращемого функцией
$current = array_keys($rows);
получилось вот так:
<?php print "<a name='".strip_tags($title)."'></a>"; print $title; ?>
<?php endif; ?>
<?php
$current = array_keys($rows);
foreach ($view->result[$current[0]]->node_data_field_note_field_note_value as $notes_arg) {
$notes_args .= "+".$notes_arg[value];
}
if ((substr($notes_args, 1)) != "") {
print views_embed_view('notes', 'default', substr($notes_args,1));
}
?>
<table class="<?php print $class; ?>">
<thead>
<tr>
<?php foreach ($header as $field => $label): ?>
<th class="views-field views-field-<?php print $fields[$field]; ?>">
<?php print $label; ?>
</th>
<?php endforeach; ?>
</tr>
</thead>
<tbody>
<?php foreach ($rows as $count => $row): ?>
<tr class="<?php print implode(' ', $row_classes[$count]); ?>">
<?php foreach ($row as $field => $content): ?>
<td class="views-field views-field-<?php print $fields[$field]; ?>">
<?php print $content; ?>
</td>
<?php endforeach; ?>
</tr>
<?php endforeach; ?>
</tbody>
</table>
но осталась проблемма с проверкой пустого вывода у строчки
print views_embed_view('notes', 'default', substr($notes_args,1));
она часто проявляется пустой строчкой там где выводится пустой вид.
<?php
//...
$args = array();
foreach ($view->result[$current[0]]->node_data_field_note_field_note_value as $notes_arg) {
$args[] = $notes_arg[value];
}
if (count($args)) {
$view = views_get_view('notes');
$view_output = $view->execute_display('default', array(implode('+', $args)));
if($view->result)
print $view_output;
}
?>
Как-то так.
Спасибо, так пограмотнее гораздо!
как в views2 в аргументах через php-handler изменить значение существующего фильтра вьюхи (фильтр по заголовку материала) на передаваемый аргумент?
зачем? аргумент ведь итак работает как фильтр
аргумент не может фильтровать ноды по заголовку без точного совпадения, а фильтром можно отобрать ноды заголовки которых содержат ту часть которая передана аргументом, можно обычный фильтр либо exposed, но всеравно нужно передавать значение аргумента значению фильтра. пытаюсь заставить работать finder views а он передает вьюхе как аргумент введенное в поле значение.
При помощи hierarchical_select и CCK в словарь пользователи добавляют многоуровневые термины.
-Первый термин
--Подтермин1
--Подтермин2
---Термин подтермина1
---Термин подтермина2
Вопрос: можно вывести разным views'ом отдельные уровни словаря? На второй уровень, например, одно представление, на третий другое.
Taxonomy Views Integrator или taxonomy_redirect мог бы использовать просто приписывая терминам разные пути, но термины создаются пользователями, значит как то нужно покрутить вьюс чтоб он воспринимал уровни. Такое можно сделать?