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). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |