Plone权限

2024-03-29 05:57:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用4.3.x来帮助这本书创建一个Plone站点

Professional Plone for Development

我现在有4个成员:

  1. 经理
  2. 客户
  3. 检票员
  4. 工作人员

因此,我根据角色自定义了一些权限,但我在某些点上是固定的,无法理解如何设置适当的权限 因为当我更改权限时,它不会反映在我的站点上,所以有两个选项,您可以在以下代码中看到:

mp = portal.tickets.manage_permission

mp(CancelAndReinstate, ['Manager', 'Staff'], 0)

mp('Access contents information', ['Manager','staff'], 0)

mp(permissions.ListFolderContents, ['Manager',], 1)

mp(permissions.View, ['Manager','Customer' ], 1)

portal.tickets.reindexObject()

在这里0和1做什么,因为这些变化没有反映在我的网站,所以我无法理解的概念。我想根据用户角色创建不同的菜单。你知道吗


Tags: 权限角色permissionsfor客户站点plonemanager
3条回答

Plone中设置权限的最常见和最直接的方法是使用genericsetup和add角色映射.xml或升级您的默认配置文件。 关于这一点,可以在http://docs.plone.org/develop/plone/security/custom_permissions.html上找到一个非常好且清晰的文档

manage_permission的第三个参数告诉我们此权限是否也从父文件夹继承:

def manage_permission(permission_to_manage, roles=[], acquire=0):
    """Change the settings for the given permission.

    If optional arg acquire is true, then the roles for the permission
    are acquired, in addition to the ones specified, otherwise the
    permissions are restricted to only the designated roles.
    """

AccessControl/interfaces.py

不知道什么“门户.票证“是给你的,但好像是网站的内容。如果是这样:你做的方式不对。 您应该绝不手动更新Plone站点根目录中任何位置的对象安全配置。你知道吗

您可能需要的是“tickets”文件夹和此文件夹下的内容的自定义工作流。你知道吗

相关问题 更多 >