2016-03-07 3 views
0

Я создаю сайт Plone по помощи этой книги, используя 4.3.xправа Plone

Professional Plone развития

так я есть сейчас 4 членов:

  1. Менеджер
  2. Коллекционер билетов
  3. Персонал

так что я доработал некоторые права в соответствии с ролью, но я фиксированной в определенный момент и не в состоянии понять, как установить соответствующие разрешения , потому что, как я изменил свои права он не отражает более моего сайта есть есть два варианта есть, как вы можете видеть в следующем коде:

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 делать, потому что эти изменения не отражает более мой сайт, так я не в состоянии понять концепцию. Я хочу создать разные меню в соответствии с ролью пользователя.

+0

Я также сталкиваюсь с этим типом проблемы в плане. –

+0

Что вы подразумеваете под «отражением моего сайта»? – SteveM

+0

отражают средние изменения, не показывающие live @SteveM – snipersnack

ответ

0

Третий аргумент 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)

1

не знаю, что «portal.tickets» для вас, но это кажется, содержание сайта. Если это так: вы делаете это неправильно. Вы должны never вручную обновить конфигурацию безопасности объекта в любом месте в корне сайта Plone.

Возможно, вам нужен пользовательский рабочий процесс для вашей папки «билеты» и для содержимого в этой папке.

0

Самый распространенный и проливный путь в Plone для установки разрешений - это использование Generic Setup и добавление rolemap.xml в ваш профиль по умолчанию (или обновление). Очень хорошую и ясную документацию по этому вопросу можно найти по адресу: http://docs.plone.org/develop/plone/security/custom_permissions.html