如何在ActiveSupport :: Concern包含块中获取我的模型名称?
我正在使用ActiveSupport::Concern
来扩展ActiveRecord
,以便ActiveSupport::Concern
我的模块。 但为了做到这一点,我需要included
块内部的ActiveRecord
的模块名称。
例如,我有一个表,我保留了可访问的属性,我希望每个模块都能获得自己的可访问属性
我的module ActiveRecordExtension
看起来像:
module ActiveRecordExtension extend ActiveSupport::Concern included do AccessibleAttributes.where(name: "#{self.name.pluralize}").each do |e| attr_accessible e.attribute.to_sym end end end # include the extension ActiveRecord::Base.send(:include, ActiveRecordExtension)
A.如何在不获取nil:NilClass
情况下(动态)获取我的模型名称nil:NilClass
?
B.我如何检查included do
哪些内容?