MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongoException:не са разрешени ключове с нулева дължина, използвахте ли $ с двойни кавички?

Току-що поправих това, като използвах ИД на референтния обект вместо самия референтен обект като дума за търсене.

$_repo->findOneByCustomer($customer->getId());

РЕДАКТИРАНЕ:Това не хвърля изключението, но всъщност и не връща нищо. Опитах да използвам new MongoId($id), както беше предложено на няколко места (Doctrine MongoDB намиране по id ), но и това не проработи. Накрая намерих нещо в пълния конструктор на заявки, който търси по препратки (забележка:това използва обекта вместо идентификатора на обекта).

$dm->createQueryBuilder()->find('CantaoCustomerBundle:CustomerTags')
                         ->field('customer')->references($customer)
                         ->getQuery()->execute();

Чувствам, че това трябва да се направи по-просто (както направихте първоначално), но тази корекция работи за мен.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да индексирам два масива в MongoDB?

  2. MongoDB - не можете да използвате .explain(), за да получите информация за заявка в C# код?

  3. MongoDB:mongoimport губи връзка при импортиране на големи файлове

  4. Преобразуване на Mongo заявка в Laravel, вложен elemMatch

  5. Грешка:queryTxt ETIMEOUT при свързване към MongoDb Atlas с помощта на mongoose