我知道我可以设置一个角色,允许用户只编辑他们自己的页面,然后去标记合适的用户创作的页面。但后来我遇到了多个用户每页问题。Drupal的用户权限,只允许特定用户编辑特定页面
有什么办法可以明确地只允许用户编辑某些(可能是多个)页面,同时在允许多个用户编辑同一页面的情况下考虑重叠?
谢谢
我知道我可以设置一个角色,允许用户只编辑他们自己的页面,然后去标记合适的用户创作的页面。但后来我遇到了多个用户每页问题。Drupal的用户权限,只允许特定用户编辑特定页面
有什么办法可以明确地只允许用户编辑某些(可能是多个)页面,同时在允许多个用户编辑同一页面的情况下考虑重叠?
谢谢
如果您只需要一个将用户的访问权限设置为特定内容类型的节点的模块,请使用http://drupal.org/project/content_access;如果内容类型是书籍,那么您也可以尝试http://drupal.org/project/book_access。
请记住,应该避免安装不同的访问控制模块,因为它们往往会彼此冲突。
如果您有耐心,那么您可以按照Jeremy的建议创建您自己的自定义模块,并实现hook_node_access_records()
和hook_node_grants()
。
这将是相当复杂的以编程方式做,但一个相当简单的解决方案是创建一个词汇应用到页面,然后使用分类访问控制模块:http://drupal.org/project/taxonomy_access设置基于权限条款。
这也有可能通过编程方式使用hook_nod_access_records()和hook_node_grants()。
使用hook node_access_record用您希望允许的用户的UID创建relm。并在钩子授予创建与用户uid在同一relm授予。这并不是那么可怕,而且非常灵活。
我在几个月前回答过类似的问题,以实现几个不同的接入场景的概述:
How do I give a specific user editing rights to a specific node?
我建议tac_lite,它少了几分沉重,它提供了配置个人用户灵活而不仅仅是角色。 – Grayside 2010-06-15 06:19:33