Я на Plone 4.1, и мне нужно создать роль портала по коду, и я не могу найти официальную ссылку.
После небольшого разговора я нашел это:
acl_users.portal_role_manager.addRole
Который, кажется, создает роль, но роль afaict нигде не доступна, ни на вкладке безопасности, ни в ролях, перечисленных в /@@usergroup-userprefs.
Затем я обнаружил также "_addRole" на объекте портала (который, я думаю, происходит от eggs / Zope2-2.13.8-py2.6.egg / OFS / role.py).
Я нашел использование этого в http://repositorio.interlegis.gov.br/ILSAAP/trunk/InstallUtils/installers/installRoles.py
и я сейчас использую
portal._addRole(new_role)
try:
acl_users.portal_role_manager.addRole(new_role)
except:
pass
это работает! :)
Реальный пример использования - это конкретный проект для трансмогрификатора:
https://github.com/simahawk/collective.blueprint.usersandgroups/blob/master/collective/blueprint/usersandgroups/blueprint.py#L62
Вопрос в том: это путь?