【问题标题】:Drupal permission, a user caseDrupal权限,一个用户案例
【发布时间】:2010-12-02 03:48:40
【问题描述】:

该网站的目标是维护product 列表。

  • 每个product 都由一个titledescriptionquantity(CCK 字段)组成。
  • 每个product 都属于一个shop
  • 每个shop 都有一个manager
  • 所有products 对所有人可见。
  • manager 只能添加/编辑自己的productsshop
  • 网站admin 可以创建新的shops 和新的managers

如何设置上述场景的权限?

我正在考虑使用Taxonomy 用于商店名称,Taxonomy Access Control 用于权限控制。不确定我是否走在正确的轨道上……

另外,Organic Groups 也是一个选项吗?

谢谢!

【问题讨论】:

  • 好问题。这是我没有体验过的 Drupal 的一个方面。我期待着答案。

标签: drupal permissions drupal-modules drupal-taxonomy organic-groups


【解决方案1】:

TAC 可以解决您的问题。我在一个非常相似的场景中使用它。设置方法如下:

  1. 使用您指定的字段创建新的内容类型“产品”
  2. 为每个商店创建一个分类术语。对“产品”内容类型启用并要求分类法
  3. 为每个店铺创建一个角色
  4. 为该角色启用 TAC
  5. 将全局的 TAC 权限设置为允许查看,但拒绝更新、删除、创建和列出。
  6. 为商店期限设置 TAC 权限以允许查看、更新、删除、创建和列出。
  7. 保存和重建权限

应该这样做,只要您对内容类型的权限设置为允许匿名用户查看“产品”中的字段。

【讨论】:

    【解决方案2】:

    我认为您使用分类访问控制的方法可能可行,但将用户分配给分类以获得适当的权限需要一些自定义代码。

    使用有机群组可能会提供更强大的开箱即用访问(每个商店都是一个群组,然后产品会在该群组中发布),但您需要取消很多默认主题才能隐藏论坛OG 开箱即用的 /wall-of-news 工作流程(这可以通过 OG 提供的挂钩来完成)。

    这里的好处是,要将产品经理添加到商店,您只需让他们成为群组管理员(这样,商店可以拥有多个管理员)。您可以将每个组设置为公开(因此所有产品都可见),但仅将编辑组中节点的权限授予该组的管理员。组管理员也将是唯一有权创建产品节点的人,这些节点将设置为组节点(这是在节点类型编辑屏幕或 OG 管理屏幕上完成的)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-10
      相关资源
      最近更新 更多