加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails中的动态常量定义

发布时间:2020-12-16 20:08:24 所属栏目:百科 来源:网络整理
导读:我在Rails中使用以下语法定义一个常量: MyModule.const_set('MYCONSTANT','foobar') 它起作用,如果我启动一个控制台和写 MyModule::MYCONSTANT 我预期会收到foobar. 问题是,当我尝试在模型中调用它时,常量不存在. D应该在哪里动态地定义我的常数,它在我的模
我在Rails中使用以下语法定义一个常量:
MyModule.const_set('MYCONSTANT','foobar')

它起作用,如果我启动一个控制台和写

MyModule::MYCONSTANT

我预期会收到foobar.

问题是,当我尝试在模型中调用它时,常量不存在.

D应该在哪里动态地定义我的常数,它在我的模型中也可以使用?

如果我在我的lib / mymodule.rb中静态地定义它,它可以工作,但是我想在运行时定义一些常量.

解决方法

可能在开发模式下自动加载是问题吗?

您的模型类是为每个请求重新创建的,因此您需要一次又一次创建常量.

问题只会在生产模式中消失.您可以在开发模式下关闭自动加载,但这将迫使您在代码中每次更改后重新启动服务器.

请参阅config / environments / development.rb:config.cache_classes = false(更改为true).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读