如果我使用'|| ='声明一个常量值会发生什么(坏的)?

时间:2011-08-30 14:27:49

标签: ruby-on-rails ruby ruby-on-rails-3 constants declaration

我正在使用Ruby on Rails v3.0.9和我想知道如果我声明一个常量值会发生什么(坏的):

MAX_LENGTH ||= 30

BTW :我正在开发一个“acts_as_something”插件(在我的应用程序中有多个类“acts_as_something”)并且我必须表示如上所述的常量值,以便不显示\生成/.../log/apache2/error.log(生产模式)中的“警告消息”,如下所示:

warning: already initialized constant MAX_LENGTH

1 个答案:

答案 0 :(得分:5)

警告一般都不好。您可能希望将其切换为:

unless (const_defined?(:MAX_LENGTH))
  MAX_LENGTH = 30
end