Ruby on rails 是否对管理操作使用嵌套控制器或声明性授权?

Ruby on rails 是否对管理操作使用嵌套控制器或声明性授权?,ruby-on-rails,nested,Ruby On Rails,Nested,比如说,我有一个具有多个模型的应用程序:帖子、博客、TODO等,我想让管理员编辑、删除所有用户的帖子、博客、TODO,我是为每个帖子创建一个嵌套的管理员控制器,还是使用声明性授权设置一个管理员帐户,可以编辑/销毁用户、帖子等 我明白这没有正确的答案,我只是在寻找最简单、最干燥的方法 谢谢我不是rails专家,但我认为这篇文章很好:它指出了在您描述的管理上下文中使用嵌套控制器的一些优点 如果我理解正确,在这两种情况下,您都需要具有管理员角色的用户,对吗?所以可能更多的是关于如何构造控制器。嵌套控制

比如说,我有一个具有多个模型的应用程序:帖子、博客、TODO等,我想让管理员编辑、删除所有用户的帖子、博客、TODO,我是为每个帖子创建一个嵌套的管理员控制器,还是使用声明性授权设置一个管理员帐户,可以编辑/销毁用户、帖子等

我明白这没有正确的答案,我只是在寻找最简单、最干燥的方法


谢谢

我不是rails专家,但我认为这篇文章很好:它指出了在您描述的管理上下文中使用嵌套控制器的一些优点


如果我理解正确,在这两种情况下,您都需要具有管理员角色的用户,对吗?所以可能更多的是关于如何构造控制器。嵌套控制器设置imho比较干净,因为它在“主”控制器中保存了几个条件。您只需将所有内容“admin”放在嵌套控制器中,将所有其他内容放在主控制器中。

取消授权与管理情况的组织方式完全不同。对于同一个问题,这些都不是不同的备选方案。您授权操作或执行访问控制的方式与您的管理界面是否使用嵌套控制器和不同的界面,或者使用与普通用户相同的界面(只需几个按钮)无关

也就是说,我将尝试一下我认为你想要问的问题:你的管理界面是否应该与你的用户界面相同,但有几个用于管理操作的按钮

我的答案是否定的,即使是最简单的网站。想象一下,通过访问你博客上的每一篇文章来清除每一篇文章中的垃圾邮件

现在想象一下,如果你有一个按日期排列的评论表

你喜欢哪一种


现在,如果你认为你的管理员应该拥有一个适合他们需要的自定义界面,那么你需要询问它是否应该嵌套。

是的,我以前看过那篇文章,但没有真正回答我的问题。我想我将使用声明性的授权插件。