как сказать представления "не тема данных строки" - PullRequest
0 голосов
/ 29 июня 2011

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

Я создал собственный шаблон views-view-unformatted - myview.tpl.php со следующим кодом:

<?php
$rowdata = array()
foreach ($rows as $key => $row) {
  dsm ("row $key: "); dsm ($row);
  $rowdata[$key] = dostuff($row);
}
?>

К сожалениюЯ обнаружил, что $ row больше не является объектом (это то, что мне нужно).Он уже представлен в виде строки html.

Как мне сказать представлениям "пожалуйста, не визуализируйте отдельные строки. Мне нужен доступ к данным строк"

Спасибо

Ответы [ 2 ]

1 голос
/ 30 июня 2011

Вместо использования шаблона вывода стиля, вы должны использовать шаблон вывода стиля строки.Таким образом, ваш файл шаблона должен быть чем-то вроде views-view-fields - your-view.tpl.php.Просто посмотрите под заголовком «Row style out» в «Theming information» для имени шаблона, которое вы должны использовать. В этом шаблоне вы получите необработанный объект $ row.

0 голосов
/ 02 июля 2011

Я решил свою проблему, создав плагин представлений. Подход аналогичен описанному здесь http://groups.drupal.org/node/10129, в разделе «Написание представлений 2 для плагинов стиля и строки». Я создал плагин стиля (но не плагин строки), и в определении стиля я установил «использует плагин строки» в false. Затем я смог получить доступ к данным строки из моего шаблона стиля. Это позволило мне связать все мои строки как объекты json.

...