2010-01-22 60 views
1

在我的网站中,每个具有经理角色的用户都需要一个网络表单来获取用户的查询。 创建的网络表单用于完整的网站。如何为每个用户创建一个webform?

我该怎么做?

+1

我们可以多关于一个特定问题的信息 – 2010-01-22 11:56:48

+0

是的,请解释一下更多你想要什么。 – 451F 2010-01-22 13:24:38

+0

我在我的系统中有3个角色,其中一个角色是经理 现在匿名用户应通过网络表单与经理联系... 这意味着每个经理都有自己的网络表单,他可以在此获得他的请求... 如何解决这个问题... – rakesh 2010-01-22 16:37:33

回答

1

听起来好像你应该在核心Drupal中使用联系人模块而不是网络表单。您可以打开它并配置权限,以便可以通过该表单联系每位经理。

如果您需要的附加字段超出了联系表格的范围,那么使用hook_form_alter()的一些小工作可以让您添加其他字段。

除非部分要求是保留每个联系人的记录发送?

+1

正确。只是为了澄清你的帖子给他人,在联系模块中有一个选项,这样每个用户都可以拥有他或她的特定联系表单,只有他/她可以。这听起来像OP之后的内容,除非可能需要保留记录(正如您所提到的那样),因为联系人模块只是发送电子邮件而不会将其保存在任何地方。 – 2010-01-22 17:26:42

0

如果您没有设置使用Webform模块,这可能是一个更复杂但适合您做需要的方法。

  1. 设置自定义内容类型和你需要用CCK
  2. 表单使用用户参考字段以指示网站用户的形式应该被送到
    • NodeReference URL可以帮助在田间地头如果您还使用Content Profile,也会自动填写表格。不幸的是,似乎没有“UserReference URL”模块。
    • PrePopulate将允许您使用GET参数从链接设置表单的值,但链接不如NodeReference URL的方法干净。
  3. 使用这些操作将消息发送到当它处于

它可能有助于创建一个视图,将列出每个用户,他们已被送往形式从指定的用户,以便他们可以从一个位置轻松找到它们。

您可能还需要设置内容访问模块,以便不是每个人都可以查看提交的表单。您必须找到适合您需求的内容,但您应该能够将内容类型设置为仅由其收件人(和作者,如有必要)或某些角色(例如,所有管理员可以查看所有请求)查看,

相关问题