我在模型中定义了一个常量,需要从Helper中访问它。有没有办法做到这一点?例如:
#app/models/my_model.rb
class MyModel < ActiveRecord::Base
VALUE = 3
def self.get_value
VALUE
end
end
#app/helpers/users_helper.rb
module UsersHelper
VALUE_V1 = MyModel.get_value
VALUE_V2 = MyModel::VALUE
end
对我来说VALUE_V1和VALUE_V2都失败了(未初始化的常量)。
答案 0 :(得分:1)
在引用常量内部模块时,您需要使用顶级命名空间。
所以,
value1 = ::MyModel.get_value
另外,正如Vimsha评论的那样,你可以直接使用常量,不需要定义另一个常量。