MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Mongoid - zapytania według przywołanego dokumentu

Problem polega na tym, że MongoDB nie ma żadnego sposobu na mapowanie Category rekord do Ad nagrywać. Wie tylko, że Ad rekord ma category_id pole, więc 'category.domain_id' zawsze nic nie zwróci. Notacja kropkowa wewnątrz zapytań działa tylko dla osadzonych dokumentów, a nie referencji (które wciąż są obywatelami drugiej kategorii w MongoDB).

Aby rozwiązać swój problem, potrzebujesz 2 zapytań:

category_ids = Category.where(:domain_id => domain.id).map(&:_id)
Ad.where(:category_id.in => category_ids)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Instalowanie MongoDB na CentOS 8

  2. Dyskryminatory typu sterownika MongoDB C# z generyczną klasą dziedziczącą z nieogólnej klasy bazowej

  3. mongoimport wybór typu pola

  4. Połączenie odrzucone przez kontener Docker

  5. Jaka jest różnica między shardingiem a replikacją w Mongo?