Problemet är att MongoDB inte har något sätt att mappa en Category
spela in till en Ad
spela in. Allt den vet är att en Ad
posten har ett category_id
fältet så 'category.domain_id'
kommer alltid att returnera ingenting. Punktnotationen i frågor fungerar bara för inbäddade dokument, inte referenser (som fortfarande är andra klassens medborgare i MongoDB).
Så för att lösa ditt problem behöver du två frågor:
category_ids = Category.where(:domain_id => domain.id).map(&:_id)
Ad.where(:category_id.in => category_ids)