Sha256: ae7a6141189fe64c9ef4abfe289433ac8730030d35e093bf1106f54dc583aed0

Contents?: true

Size: 784 Bytes

Versions: 8

Compression:

Stored size: 784 Bytes

Contents

# encoding: utf-8
module Mongoid #:nodoc:
  module Extensions #:nodoc:
    module Object #:nodoc:
      # This module converts objects into mongoid related objects.
      module Conversions #:nodoc:
        def self.included(base)
          base.class_eval do
            include InstanceMethods
            extend ClassMethods
          end
        end

        module InstanceMethods
          # Converts this object to a hash of attributes
          def mongoidize
            self.attributes
          end
        end

        module ClassMethods
          def set(value)
            value.respond_to?(:attributes) ? value.attributes : value
          end

          def get(value)
            value ? self.new(value) : value
          end
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 4 rubygems

Version Path
mongoid-1.9.5 lib/mongoid/extensions/object/conversions.rb
mongoid-with-auth-1.9.4 lib/mongoid/extensions/object/conversions.rb
mongoid-rails2-1.9.4 lib/mongoid/extensions/object/conversions.rb
mongoid-rails2-1.9.3 lib/mongoid/extensions/object/conversions.rb
mongoid-1.9.2 lib/mongoid/extensions/object/conversions.rb
sskirby-mongoid-1.9.1 lib/mongoid/extensions/object/conversions.rb
mongoid-1.9.1 lib/mongoid/extensions/object/conversions.rb
mongoid-1.9.0 lib/mongoid/extensions/object/conversions.rb