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

Documento incorporado com associação pertencem_to no Mongoid


A estrutura do modelo está errada como em Mongo você só mantém as informações em documentos incorporados que são necessários apenas no documento pai.

Se nos convidados você tiver apenas o campo de status, poderá tentar isso, por exemplo, dois tipos de status presentes ou não 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

então você pode consultar com o status como
Event.first.present_guests