MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Rails 3 usando MongoDB via adaptador mongoid - existe alguma maneira de compartilhar especificações de atributos sem usar herança de tabela única?


Você pode definir os atributos comuns em um módulo e incluí-los.
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