我有3种类型的用户:
到目前为止我做了什么?:
我创建了名为Book
的内容类型。 Authors
在我的网站上创建帐户&登录&然后添加有关他们撰写的书籍的信息。我有一个名为books
的页面显示的视图,其中列出了即使是匿名用户也可以看到的所有书籍。
我需要什么?
Reader
应该能够选择'x'否。这个观点的书籍。没有。 Reader
可以选择的书籍取决于他的等级Voracious Reader
,Moderate Reader
,Occasional Reader
。 Reader
选择Book(s)
后,Site Admin
将会看到所有读者选择的书籍列表。 我如何完成剩下的工作?
答案 0 :(得分:1)
在名为“ordered books”的用户个人资料中创建一个新的field_collection字段。
修改“有序图书”字段集合并添加2个字段:
1本书 - 这将是您图书的实体参考 内容类型。您需要entity reference module 此
1个被叫状态。这可以是值为“ordered”的列表 “已发送”。
现在,当用户编辑他们的个人资料时,可以选择他们想要的书籍。
此时您需要禁用状态字段以将其锁定为已订购。 (使用hook_form_alter)。
然后在自定义模块中使用hook_form_alter为用户配置文件表单添加一些额外的验证。
在新的验证功能中,检查提交表单的用户类型(贪婪,中等或偶尔)以及他们选择了多少本书,并在适当的时候提出任何错误。
当用户回顾他们的个人资料时,他们会看到一系列图书及其状态。
您可能希望研究创建一个名为“orders”的新节点类型。这可以具有对用户的实体引用,以及对书籍的实体引用。这样你就可以获得整个订单的状态以及单独的书籍,但这只是一个想法 - 你可能不需要它。