Sha256: 576ba78aefa9621a0e8150ffb0cbaae7cf1b600db674a3f2a493d6f81ab3d80c

Contents?: true

Size: 407 Bytes

Versions: 70

Compression:

Stored size: 407 Bytes

Contents

module Extface
  module Extfaceable
    extend ActiveSupport::Concern
    
    def composite_id
      "#{(self.class.try(:base_class) || self.class).send(:name)}##{self.id}"
    end
    
    module ClassMethods
      def has_extface_devices
        has_many :extface_devices, class_name: 'Extface::Device', as: :extfaceable
      end
    end

  end
end
ActiveRecord::Base.send :include, Extface::Extfaceable

Version data entries

70 entries across 70 versions & 1 rubygems

Version Path
extface-0.4.5 lib/extface/extfaceable.rb
extface-0.4.4b lib/extface/extfaceable.rb
extface-0.4.4a lib/extface/extfaceable.rb
extface-0.4.4 lib/extface/extfaceable.rb
extface-0.4.3g lib/extface/extfaceable.rb
extface-0.4.3f lib/extface/extfaceable.rb
extface-0.4.3e lib/extface/extfaceable.rb
extface-0.4.3d lib/extface/extfaceable.rb
extface-0.4.3c lib/extface/extfaceable.rb
extface-0.4.3b lib/extface/extfaceable.rb
extface-0.4.3a lib/extface/extfaceable.rb
extface-0.4.2a lib/extface/extfaceable.rb
extface-0.4.2 lib/extface/extfaceable.rb
extface-0.4.1b lib/extface/extfaceable.rb
extface-0.4.1a lib/extface/extfaceable.rb
extface-0.4.0 lib/extface/extfaceable.rb
extface-0.3.0c lib/extface/extfaceable.rb
extface-0.3.0b lib/extface/extfaceable.rb
extface-0.3.0a lib/extface/extfaceable.rb
extface-0.3.0 lib/extface/extfaceable.rb