从Rails 4中的模块访问class_attribute

时间:2013-07-02 23:14:29

标签: module ruby-on-rails-4 attr-accessible

我有一个定义自定义attr_accessible属性的模块,如下所示:

module MyModule
    include ActiveModel::MassAssignmentSecurity
    %w[var1 var2].each do |key|
        attr_accessible key
    end
end

class MyClass
    include MyModule
end

由于attr_accessible是在ActiveModel::MassAssignmentSecurity中定义的,因此我将其包含在MyModule中。 但是,当我致电object = MyClass.first; object.var1

我收到以下错误:

NoMethodError: undefined method `class_attribute'

现在,此方法似乎在active_support / core_ext / class.rb中定义。但是,即使在

之后
require 'active_support/core_ext/class'

我仍然收到相同的错误消息。

为了访问此方法,我应该包含哪个模块?我正在使用Rails 4,protected_attributes gem。

Update1:​​添加include ActiveModel::MassAssignmentSecurity

0 个答案:

没有答案