新手问题 Rails 如何定义全局变量

ljdam · 2013年08月08日 · 最后由 ljdam 回复于 2013年08月26日 · 11207 次阅读

想实现一个单例的全局变量类,用于存放一些用户的配置(比如说提示时间间隔)。google 了一下,基本上都是说写在 config/environment.rb 中。 由于这些配置在系统运行期间可能会被用户改变,不适用上述的方法。 请教各位,在 rails 中应该如何实现?rails 版本 3.2.14 初学 rails,还望大家多多帮助,谢谢!

全大写就可以了,在 config/application.rb 里面。

配置建议用 https://github.com/binarylogic/settingslogic

大写字母开头的是 变量 常量 $ 开头的是全局变量

#2 楼 @zhangyuan 大写字母开头的是常量才对吧

#3 楼 @Martin91 手抖了…… 已改

#1 楼 @huacnlee settingslogic +1

如果喜欢用 ENV['var'] 这种形式,还可以用 figaro

#2 楼 @zhangyuan 哦,对,$ 开头的 😊

根据用户行为可变的全局变量,听上去太可怕了。

楼主要的是对于用户的局部变量吧?就关联到用户,每次操作都读出来就行了。

感谢各位回复,已经找到一个 gem 来完成

gem "rails-settings-cached"
需要 登录 后方可回复, 如果你还没有账号请 注册新账号