如何告诉视图“不要主题行数据”

时间:2011-06-29 03:21:49

标签: drupal-6 drupal-views

我认为将行式设置为“字段”。而不是以正常方式对各个行进行主题 - 即使用样式,行和字段模板 - 我想从每一行中提取某些信息,将提取的信息捆绑为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 个答案:

答案 0 :(得分:1)

您应该使用行样式输出模板,而不是使用样式输出模板。所以你的模板文件应该像views-view-fields - your-view.tpl.php。只需在“主题信息”中的“行样式”标题下查看“您应该使用的模板名称。在该模板中,您将获得$ row原始对象。

答案 1 :(得分:0)

我通过创建一个views插件解决了我的问题。该方法类似于此处描述的http://groups.drupal.org/node/10129,在“编写视图2样式和行插件”一节中。我创建了一个样式插件(但不是一个行插件),在样式定义中我将'使用行插件'设置为false。然后我可以从我的样式模板中访问行数据。这允许我将所有行捆绑为json对象。