将结果与表单一起包含在同一页面上,并使用drupal对结果进行分析

时间:2010-12-15 21:13:23

标签: drupal drupal-6 drupal-fapi drupal-theming

我已在drupal中成功创建了一个页面,该页面在同一页面上显示表单和结果。表单就像结果的过滤器。结果包括一堆html,其中包括通过Chart API模块(http://drupal.org/project/chart)的谷歌图表。结果通过标记表单元素包含在表单中(来自eaton的评论:Drupal: How to Render Results of Form on Same Page as Form)。

由于我无法访问表单API范围之外的表单结果(例如页面回调函数),我似乎无法真正主题化结果。有没有办法将复杂的结果放在与表单相同的页面上,并使结果成为主题?另外,是否有更好的drupal方式在同一页面上显示表单结果?

2 个答案:

答案 0 :(得分:0)

drupal中的任何东西都是可以设置的 - 这是使drupal很棒的一件事。您可以使用hook_theme()并在此处设置要使用的主题模板以及要传递给主题文件的参数。你会写这样的主题

function MYMODULE_theme{
  return array(
    'theme_name'=>array(
      'arguments'=>array('parameters'=>NULL)
      'path'=>'path_to_theme_file',
      'theme'=>'template_name'
    ),
  );
}

然后,即使按照帖子中的建议,您也可以通过调用theme('theme_name', $parameters);

在您的参数可用的任何地方调用此主题

答案 1 :(得分:0)

我对你的解决方案感兴趣。我们使用视图和外露滤波器做了非常相似的声音。将视图和表单的结果都表达为drupal中非常直接/标准的事情类型。示例:views-exposed-form-form_name.tpl.php和views-view-view_name.tpl.php。表单也可以更改为hook_form_alter。