MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoException:Schlüssel der Länge Null sind nicht erlaubt, haben Sie $ mit doppelten Anführungszeichen verwendet?

Ich habe dies gerade behoben, indem ich die ID des referenzierten Objekts anstelle des Referenzobjekts selbst als Suchbegriff verwendet habe.

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

BEARBEITEN:Das löst keine Ausnahme aus, gibt aber auch nichts zurück. Ich habe versucht, die neue MongoId ($id) zu verwenden, wie an einigen Stellen vorgeschlagen wurde (Lehre MongoDB nach ID suchen ), aber das hat auch nicht funktioniert. Schließlich habe ich im vollständigen Abfragegenerator etwas gefunden, das nach Referenzen sucht (Anmerkung:Dies verwendet das Objekt anstelle der Objekt-ID).

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

Ich habe das Gefühl, dass dies einfacher gemacht werden sollte (wie Sie es ursprünglich getan haben), aber dieser Fix funktioniert für mich.