Views, задать аргумент для типа "блок"

Главные вкладки

Аватар пользователя ravik ravik 25 октября 2008 в 2:33

Во Views пытаюсь решить как для типа вида "блок" задать необходимый аргумент. Задать нужно вот это значение - P1W, что означает "с текущей даты на неделю вперед" (http://drupal.org/node/92188).

Если значение ввести в поле аргументов Live preview внизу вида, я вижу нужную мне сортировку, запрос работает. Теперь нужно добавить этот аргумент в настройки вида.

Добавляю поле "аргумент", в списке Action to take if argument is not present: выбираю "Provide default argument". В настройках Provide default argument options, Default argument type: задать собственнй аргумент можно выбрав пункт "Fixed entry" или "PHP Code". Если добавить в "Fixed entry" - запрос не работает. Что можно вписать в "PHP Code" ?

Или быть может есть другое решение и я не туда копаю?

Комментарии

Аватар пользователя Ромка Ромка 25 октября 2008 в 9:12

Блочная вьюха не принимает агрументов (вот цитата из доки: "Blocks do not accept arguments from any source"). Для того чтобы решить твою задачу, можно воспользоваться модулем [module=Panels]. Ставишь его, создаешь мини-панель (панель выводящаяся в блоке), в качестве ее содержимого выбираешь свою вьюху, в настройках панели ставишь галку "Send arguments" и в строке аргументов указываешь маски передаваемых аргументов, например "%1".

Аватар пользователя Ромка Ромка 25 октября 2008 в 9:16

А, ну да. Надо добавить что в текущей версии Панелс есть баг, известный еще с первой альфы, но почему-то до сих пор не исправленный. Из-за этого бага аргументы из панели во вьюху не передаются. Лечится баг этим патчем: http://drupal.org/node/307287. Там всего одна строчка правится.

Аватар пользователя ravik ravik 25 октября 2008 в 10:28

Не хотелось с panels связываться, и так на лимит памяти используется по максимуму.
Спасибо за совет.

Аватар пользователя ravik ravik 26 октября 2008 в 13:33

Razunter wrote:
Можно просто embed'ить view, передавая ему аргумент

к сожалению с php я на вы и сам сделать не смогу

Аватар пользователя artanna@drupal.org artanna@drupal.org 27 октября 2008 в 0:56

<a href="mailto:artanna@drupal.org">artanna@drupal.org</a> wrote:
Огласите, пожалуйста, как "Можно просто embed'ить view, передавая ему аргумент".

Вот такой вариант есть http://www.drupal.ru/node/18117. Только сначала создайте свой Views и вставьте в приведеный код имя своего Views'a. А то потом вычищать из таблицы boxes надо будет неправильное имя.