【发布时间】:2020-07-24 09:34:49
【问题描述】:
我有点迷恋 Pundit:感觉解决方案应该很简单 - 但我不明白。实际上我有一堆模型都依赖于一个主要模型。我的主要模型是脚本。该脚本有许多角色、许多场景、许多服装等。此外,它还具有一些连接的连接,例如 scene.roles。我只是想授权创建脚本的用户做所有事情(添加角色、删除场景,只是在她自己的脚本范围内的所有事情),而其他人什么都不做(和看)。我需要为每个模型创建一个策略,还是我可以(重新)以某种方式使用一个“脚本策略”?
授权在依赖控制器中的外观如何(即角色中的“索引”或场景中的“新”)?
身份验证由设备处理。用户必须登录才能查看或执行任何操作。 这是我关于堆栈溢出的第一篇文章,很高兴加入社区:-)
【问题讨论】:
-
欢迎来到 SO,PixAff! Pundit 策略只是 PORO,因此您可以简单地创建一个共享类并为每个模型继承它。如果您需要对给定模型的不同权限,您可以覆盖继承的方法。
标签: ruby-on-rails ruby authorization pundit