問題は、MongoDBにCategory
をマッピングする方法がないことです。 Ad
に記録する 記録。知っているのは、Ad
レコードにcategory_id
があります フィールドなので、'category.domain_id'
常に何も返しません。クエリ内のドット表記は、参照ではなく、埋め込まれたドキュメントに対してのみ機能します(MongoDBの二級市民です)。
したがって、問題を解決するには、2つのクエリが必要です。
category_ids = Category.where(:domain_id => domain.id).map(&:_id)
Ad.where(:category_id.in => category_ids)