Ruby on rails Rails-记录级acl的解决方案
我发现很多插件在控制器方法级别实现访问控制,但我有一些特殊情况: 例如,我们有PostsController#索引 我想获取范围为->Ruby on rails Rails-记录级acl的解决方案,ruby-on-rails,acl,Ruby On Rails,Acl,我发现很多插件在控制器方法级别实现访问控制,但我有一些特殊情况: 例如,我们有PostsController#索引 我想获取范围为->的记录,其中(:user\u id=>current\u user.id)。 这很简单,但我想在acl级别上这样做。 当然,范围和条件可能要复杂得多,比如->“仅检索在特定国家发布的帖子”等。最简单的方法是通过关联而不是额外的插件来解决这个问题 current_user.posts.all country = Country.find(...) count
的记录,其中(:user\u id=>current\u user.id)
。
这很简单,但我想在acl级别上这样做。
当然,范围和条件可能要复杂得多,比如->“仅检索在特定国家发布的帖子”等。最简单的方法是通过关联而不是额外的插件来解决这个问题
current_user.posts.all
country = Country.find(...)
country.posts.all
...
可读性、性能和灵活性的完美平衡。这里的ACL是什么意思?您给出的两个示例听起来仍然像是范围合成。
current_user.posts.all
country = Country.find(...)
country.posts.all
...