Я только что перешел на Rails за последние несколько месяцев и столкнулся с моей первой настоящей проблемой в моем текущем проекте, на которую я не смог найти ответ.
Моя цель состоит в том, чтобы реализовать некоторый детальный контроль над тем, какие роли/группы пользователей, сгенерированные из Rolify и контролируемые Pundit, имеют доступ к определенной категории, подкатегории или статье через консоль администратора Upmin. Категория/статья должна позволять более чем одной пользовательской роли/группе доступ к своему содержимому.
Ответ здесь демонстрирует определение роли для конкретного экземпляра модели, что хорошо, но Я также хотел бы иметь этот контроль из экземпляра модели через простую форму флажка в консоли администратора моего приложения (Upmin_admin для тех, кто заинтересован).
Я прав, думая, что для создания этой функциональности не так уж много, кроме создания частичного представления экземпляра категории/статьи в консоли администратора, в котором перечислены все роли/группы и их текущие настройки CRUD для этой конкретной категории/статьи. пример. Или я пропустил несколько промежуточных шагов?
Был бы очень признателен за толчок в правильном направлении. Спасибо!
Небольшая предыстория моего приложения:
В моем веб-приложении у меня есть вложенные ресурсы, категории, статьи и комментарии, например:
resources :categories do
resources :articles do
resources :microposts, only: [:new, :create, :edit, :destroy
end
end
(Я знаю, что рекомендуется вкладывать ресурсы глубже одного уровня, однако я я только что вскочил на поезд Rails, и :shallow = true не дал результатов, которые я искал.)
Категории действуют как вложенные наборы, любезно предоставленные Awesome Nested Set, и могут «удерживать» как категории, так и статьи (и расширенные комментарии).
Пользователи аутентифицируются через сервер LDAP с помощью Devise — я буду настраивать это в ближайшем будущем, чтобы автоматически назначать пользователя правильной группе/роли.