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)