如何使用webform的URL参数

时间:2013-03-23 18:49:15

标签: php drupal drupal-views url-parameters drupal-webform

使用webform我创建了一个包含几对属于彼此的组件的表单。例如,文本字段类型的组件“名称”和标记类型的组件“名称”。目的是提交文本字段将显示在标记字段中。

将为用户提供使用角色,其中textareas应填写以及他或她看到的标记字段。通过这种方式,我希望不同的用户(在这种情况下是学生)与单个用户(教师)进行通信。然后,学生在文本区提交的文本将显示为教师的只读文本。

在无与伦比的Johan Falk http://vimeo.com/18701843的帮助下,我可以从网络表单提交数据中获取数据到视图中。通过在上下文过滤器上使用提交ID(sid),我可以选择特定学生的提交并显示它。在Views中的预览中,这很好用。

使用上下文过滤器可以使用用户(学生)选择的输入的提交ID。在预览视图中,这工作正常。然后我使用以下php代码将块导入标记字段:

<? php
   $ block = module_invoke ('views', 'block_view', 'block_delta');
  print render ($ block ['content']);
?>

这是我的问题!

以上print render ($ block ['content']);该块显示为对所有用户(学生)提交的调查。但是,我想使用url参数来显示特定用户的单个提交,如上面提到的Views中的预览。我已经搜索了一种方法来为上面的PHP代码添加过滤器,但无法找到解决方案。

有没有人知道如何解决这个问题?提前谢谢。

1 个答案:

答案 0 :(得分:0)

如果我正确理解了您的问题,我相信您可以使用仅使用视图的给定过滤器生成您想要的块。

  1. 尝试创建 Webform提交类型的新视图。 (/管理/构建/视图/添加)
  2. 添加块显示
  3. 添加关系网络表单提交:用户,并确保它是必需的。
  4. 添加过滤器用户:当前是,它应该使用您的关系(Webform提交用户)。
  5. 这应该将块输出过滤为当前登录用户的提交。