【问题标题】:Ruby on Rails - class caching?Ruby on Rails - 类缓存?
【发布时间】:2009-07-24 17:42:24
【问题描述】:

我阅读了一篇文章 here,并使用那里找到的原则为我的控制器编写了管理检查。基本上,它会检查您所在的控制器,然后我创建一个数组,说明此人是否有权查看该控制器,而不是查找,传递它。

文章的作者说读者不应该使用示例代码,因为它有缺陷,他们应该使用他的插件(当然现在已经过时了)。他说

“由于使用类变量和类缓存,上述代码在生产模式下运行时存在一些问题。”

我有一个测试失败,我认为这可能是由于这个原因,但我不太确定我不应该使用代码的哪一部分。我有以下内容(在 application.rb 中):

 controller = params[:controller]
 action = params[:action]

但我将其更改为:

controller = self.class.name
action = params[:action]

如何正确访问操作名称?一般来说,您可以在开发模式下做哪些在生产环境中无法做的事情?

【问题讨论】:

    标签: ruby-on-rails caching controller production


    【解决方案1】:

    您是否考虑过使用基于角色的权限插件? 请参阅以下 stackoverflow 问题:

    Which Rails plug in is best for role based permissions? (Please provide one nomination per answer)

    我不知道您粘贴的代码的生产使用有任何问题。有问题的插件可能由于@@ 的可能滥用而存在一些问题,但是我没有彻底检查它。

    【讨论】:

    猜你喜欢
    • 2012-09-24
    • 1970-01-01
    • 2018-11-07
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 2011-08-28
    • 1970-01-01
    • 2015-03-02
    相关资源
    最近更新 更多