Пользовательские разрешения Drupal, только разрешают определенным пользователям редактировать определенные страницы - PullRequest
3 голосов
/ 15 июня 2010

Я знаю, что могу установить роль, позволяющую пользователю редактировать только свои собственные страницы, а затем пометить соответствующие страницы, которые будут созданы соответствующим пользователем. Но потом я сталкиваюсь с несколькими пользователями на странице проблем.

Есть ли способ, которым вы можете явно разрешить пользователю только редактировать определенные (возможно, несколько) страниц, учитывая при этом перекрытие в случае, если более чем одному пользователю разрешено редактировать одну и ту же страницу?

Спасибо

Ответы [ 5 ]

2 голосов
/ 15 июня 2010

Это было бы довольно сложно сделать программно, но довольно простое решение - создать словарь для применения к страницам, а затем использовать модуль контроля доступа таксономии: http://drupal.org/project/taxonomy_access, чтобы установить разрешения на основе терминов.

1 голос
/ 16 июня 2010

Я ответил на аналогичный вопрос несколько месяцев назад с обзором реализации нескольких различных сценариев доступа:
Как дать конкретному пользователю права на редактирование для определенного узла?

1 голос
/ 15 июня 2010

Если вам просто нужен модуль, который устанавливает права доступа пользователя к узлу определенного типа контента, тогда используйте http://drupal.org/project/content_access;, если тип контента - книга, тогда вы также можете попробовать http://drupal.org/project/book_access.
Помните, что следует избегать установки различных модулей для контроля доступа, поскольку они имеют тенденцию конфликтовать друг с другом.

Если у вас есть терпение, вы можете создать свой собственный модуль и реализовать hook_node_access_records()и hook_node_grants() как предложено Джереми.

1 голос
/ 15 июня 2010

попробуй http://drupal.org/project/coherent_access

или http://drupal.org/project/content_access

это безумие! @ !!! @! @!

0 голосов
/ 15 июня 2010

Это также можно сделать программно, используя hook_nod_access_records () и hook_node_grants () .

С помощью hook node_access_record создайте relm с UID пользователей, которых вы хотите разрешить. и в хуковских грантах создайте грант с пользователями uid в одном и том же выпуске. Это не так страшно и очень гибко.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...