Het probleem is dat MongoDB geen enkele manier heeft om een Category
. toe te wijzen opnemen in een Ad
dossier. Het enige dat het weet, is dat een Ad
record heeft een category_id
veld dus 'category.domain_id'
zal altijd niets teruggeven. De puntnotatie in query's werkt alleen voor ingesloten documenten, niet voor referenties (die nog steeds tweederangsburgers zijn in MongoDB).
Dus om je probleem op te lossen, heb je 2 vragen nodig:
category_ids = Category.where(:domain_id => domain.id).map(&:_id)
Ad.where(:category_id.in => category_ids)