MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Rails 3 utilizzando MongoDB tramite adattatore mongoid:esiste un modo per condividere le specifiche degli attributi senza utilizzare l'ereditarietà a tabella singola?

Puoi definire gli attributi comuni in un modulo e includerli.

require 'mongoid'

module DefaultAttrs

  def self.included(klass)
    klass.instance_eval do
      field :uuid, :type => String
    end
  end

end

class Foo
  include Mongoid::Document
  include DefaultAttrs

  field :a, :type => String
end

class Bar
  include Mongoid::Document
  include DefaultAttrs

  field :b, :type => String
end