【问题标题】:How can a user choose items from a view?用户如何从视图中选择项目?
【发布时间】:2014-02-03 08:55:14
【问题描述】:

我有 3 类用户:

  1. 作者
  2. 读者
  3. 网站管理员

到目前为止我做了什么?:

我创建了名为 Book 的内容类型。 Authors在我的网站上创建帐户并登录,然后添加有关他们创作的书籍的信息。我有一个名为 books 的页面显示视图,其中列出了所有匿名用户也可以看到的书籍。

我需要什么?

  1. Reader 应该可以选择“x”号。从这个角度看的书。没有。 Reader 可以选择的书籍取决于他的水平 Voracious ReaderModerate ReaderOccasional Reader
  2. Reader 选择Book(s) 后,Site Admin 将看到所有读者选择的书籍列表。
  3. 然后他会将书寄到他们的地址(离线)并将状态更新为“已发货”。
  4. 当然,读者应该能够看到他们选择的所有书籍的列表及其状态。

我如何完成其​​余的工作?

【问题讨论】:

    标签: drupal drupal-7


    【解决方案1】:

    安装field collection module

    在用户个人资料上创建一个名为“订购书籍”的新 field_collection 字段。

    编辑您的“订购书籍”字段集合并添加 2 个字段:

    • 1 被称为书 - 这将是对您的书的实体引用 内容类型。您将需要entity reference module 这个。

    • 1 调用状态。这可以是一个具有“有序”值的列表,并且 “发送”。

    现在,当用户编辑他们的个人资料时,可以选择他们想要的书籍。

    此时您需要禁用状态字段以将其锁定为已订购。 (使用 hook_form_alter)。

    然后在自定义模块中使用 hook_form_alter 为用户配置文件表单添加一些额外的验证。

    在您的新验证功能中,检查提交表单的用户类型(贪婪、中等或偶尔)以及他们选择了多少本书,并酌情提出任何错误。

    当用户查看他们的个人资料时,他们会看到图书列表及其状态。

    您可能想考虑创建一个名为“订单”或其他内容的新节点类型。这可能具有对用户的实体引用和对书籍的实体引用。这样您就可以拥有整个订单以及单独书籍的状态,但这只是一个想法 - 您可能不需要它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-26
      • 1970-01-01
      相关资源
      最近更新 更多