Modeling data on a many-to-many join in Mongo?
Try this way
var EventScheme = new Schema({ ... }); mongoose.model('Event', EventScheme);var PersonScheme = new Schema({ email: String, events: [{ event: { type: mongoose.Schema.ObjectId, ref: 'Event' }, enjoyed: Boolean }]});
You would be better off using an Embedded Document rather than a link.
var Person = { email: "joe.user@users.mongodb.org", events: [ {code: "MONGONY2012", name: "Mongo NY", date: "5/23/2012", link: "http://www.10gen.com/events/mongo-nyc", enjoyed: true}, {code: "MONGOPHL2012", name: "Mongo Philly", date: "4/9/2012", link: "http://www.10gen.com/events/mongodb-philly", enjoyed: true} ]}
You can query Mongo for an event easily, using dot notation:
db.people.find({"events.code": "MONGONY2012"})