Myslím, že chybová zpráva obsahuje důležité informace, které musíte vzít v úvahu:
Protože se pokoušíte uložit dotaz (nebo jeho část) do dokumentu, skončíte s názvy atributů, které obsahují klíčová slova operátora mongo (například $or
, $ne
, $gt
). Dokumentace mongo ve skutečnosti odkazuje přesně na tento scénář
- přidán důraz
V těchto případech bych nevěřil aplikacím třetích stran, jako je Robomongo. Doporučuji ladit/testovat tento problém přímo v mongo shellu.
Můj návrh by byl uložit unifikovanou verzi dotazu do vašeho dokumentu, aby nezasahovala do vyhrazených klíčových slov operátorů. Můžete použít dostupný JSON.stringify(my_obj);
zakódovat částečný dotaz do řetězce a poté jej analyzovat/dekódovat, když se jej rozhodnete později načíst:JSON.parse(escaped_query_string_from_db)