W zależności od potrzeb zapytania możesz umieścić wszystko w dokumencie użytkownika:
{name:"Joe"
,roles:["Admin","User","Engineer"]
}
Aby zdobyć wszystkich inżynierów, użyj:
db.things.find( { roles : "Engineer" } );
Jeśli chcesz zachować role w osobnych dokumentach, możesz dołączyć _id dokumentu w tablicy ról zamiast nazwy:
{name:"Joe"
,roles:["4b5783300334000000000aa9","5783300334000000000aa943","6c6793300334001000000006"]
}
i skonfiguruj role takie jak:
{_id:"6c6793300334001000000006"
,rolename:"Engineer"
}