module RorHack::ClassLevelInheritableAttributes::ClassMethods

Public Instance Methods

inheritable_attributes(*args) click to toggle source
# File lib/ror_hack/active_record_hack.rb, line 132
      def inheritable_attributes(*args)
        @inheritable_attributes ||= [:inheritable_attributes]
        @inheritable_attributes += args
        args.each do |arg|
          class_eval <<-RUBY
          class << self; attr_accessor :#{arg} end
          RUBY
        end
        @inheritable_attributes
      end
inherited(subclass) click to toggle source
Calls superclass method
# File lib/ror_hack/active_record_hack.rb, line 143
def inherited(subclass)
  super
  (@inheritable_attributes||[]).each do |inheritable_attribute|
    instance_var = "@#{inheritable_attribute}"
    subclass.instance_variable_set(instance_var, instance_variable_get(instance_var))
  end
end