sql >> Base de Datos >  >> NoSQL >> MongoDB

Documento incrustado con pertenencia_a la asociación en Mongoid

La estructura del modelo es incorrecta como en Mongo solo conserva la información en documentos incrustados que solo se requieren en el documento principal.

Si en los invitados solo tiene un campo de estado, puede probar esto, por ejemplo, dos tipos de estado presentes o no presentes

class User
  include Mongoid::Document
  has_and_belongs_to_belongs_to :event, :inverse_of => "present_guests"
  has_and_belongs_to_belongs_to :event, :inverse_of => "not_present_guests"
end

class Event
  include Mongoid::Document
  has_and_belongs_to_many :present_guests, :class_name => "User", :inverse_of => "present_guests"
  has_and_belongs_to_has_many :not_present_guests, :class_name => "User", :inverse_of => "not_present_guests"
end

entonces puede consultar con el estado como

Event.first.present_guests