Bac*_*cko 1 ruby ruby-on-rails constants declaration ruby-on-rails-3
我正在使用Ruby on Rails v3.0.9,我想知道如果我声明一个常量值会发生什么(坏的):
MAX_LENGTH ||= 30
Run Code Online (Sandbox Code Playgroud)
顺便说一句:我正在开发一个"acts_as_something"插件(在我的应用程序中有多个类"acts_as_something"),我必须声明上面的常量值,以便在/.../log/apache2/error.log(生产模式)中不显示\生成"警告消息",如下所示:
warning: already initialized constant MAX_LENGTH
Run Code Online (Sandbox Code Playgroud)
警告一般都不好.您可能希望将其切换为:
unless (const_defined?(:MAX_LENGTH))
MAX_LENGTH = 30
end
Run Code Online (Sandbox Code Playgroud)