Можно ли во views с помощью filter делать сложные условия?

Прислано: Siegfrid@drupal.org

вт, 09/03/2010 - 20:30

Другие статьи по теме:

Интересует следующее, можно ли сделать к примеру вот такой запрос с помощью views (в особенности интересна часть, относящаяся к фильтру):
select n.nid from node n where n.`changed` - n.created > 100;

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано orangeudav в вт, 09/03/2010 - 20:50.

можно сделать типа where n.`changed`=1 а потом в хуке hook_views_query_alter в своем модуле поменять на то что нужно


Опубликовано graker в вт, 09/03/2010 - 20:58.

Если в своем модуле, то проще свой фильтр-хэндлер написать, который будет эту формулу подставлять.


Опубликовано Siegfrid@drupal.org в ср, 10/03/2010 - 05:06.

Меня все таки интересует готовое универсальное решение. wokraround все таки менее привлекателен, т.к вся прелесть во вьювс, это скорость и относительная простота разработки, иначе проще будет написать свой небольшой модуль без вызова views.


Опубликовано graker в ср, 10/03/2010 - 05:34.

Фильтр-хэндлер - это не workaround, написание своих хэндлеров - фича Views API.

Но если хочется попроще, то надо просто зайти на drupalmodules.com и написать в строке поиска "views filter". После чего появится модуль Views Date Range Filter, где какие-то фильтры дат уже написаны за вас. Если там нету, то наверное придется написать.


Опубликовано Siegfrid@drupal.org в ср, 10/03/2010 - 08:59.

graker написал(а):

Фильтр-хэндлер - это не workaround, написание своих хэндлеров - фича Views API.

Но если хочется попроще, то надо просто зайти на drupalmodules.com и написать в строке поиска "views filter". После чего появится модуль Views Date Range Filter, где какие-то фильтры дат уже написаны за вас. Если там нету, то наверное придется написать.

Странно, но я так и не смог найти похожего модуля, хотя как мне кажется, было бы вполне естественным желание сделать модуль поддержки арифметических условий для фильтров во views.

Например, чтобы осуществлять выборку нод за последние n дней с точностью до минуты, при этом n дней должны задаваться пользователем через CCK поле и могут варьироваться в заданном диапазоне.


Опубликовано graker в ср, 10/03/2010 - 09:03.

Ну так а Views Date Range Filter полезен, или нет? Интересно же.


Опубликовано Siegfrid@drupal.org в ср, 10/03/2010 - 09:20.

Ну раз есть такой модуль, значит для кого то он был полезен, но для меня он не подошел.


Опубликовано graker в ср, 10/03/2010 - 09:44.

Значит, видимо, руками придется делать. Это не страшно, views-хэндлеры писать нетрудно.


Опубликовано orangeudav в ср, 10/03/2010 - 09:47.

на хабре что-то было на тему написания расширений для views


Опубликовано graker в ср, 10/03/2010 - 10:12.

Я недавно писал у себя в блоге про расширения для views, только там больше про кастомные типы данных.

Но если с английским языком проблем нет, то вот тут много написано по теме: http://views-help.doc.logrus.com/


Опубликовано Siegfrid@drupal.org в ср, 10/03/2010 - 13:57.

Пока еще руки не дойдут никак до views api. Но уже чувствую, что скоро озадачусь! Спасибо за помощь!


Новое на сайте