sql >> Databáze >  >> NoSQL >> MongoDB

Slovník Pythonu:odstranění u' znaků

Některé databáze, jako je Sqlite3, umožňují definovat funkce převodníku a adaptéru, takže můžete načíst text jako str spíše než unicode . Bohužel MongoDB neposkytuje tuto možnost pro žádný z běžně potřebných typů, jako je str, decimal nebo datetime:

  • http://api.mongodb.org/python/current/tutorial.html#a-note-on-unicode-strings
  • http://api.mongodb.org/python/current/faq.html#how-can-i-store-decimal-decimal-instances
  • http://api.mongodb.org/python/current/faq.html#how-can-i-save-a-datetime-date-instance

Po eliminaci možností Mongo to ponechává psaní kódu Python, aby se konverze provedla po načtení dat. Mohli byste napsat rekurzivní funkci, která projde výsledkem a převede každé pole.

Jako rychlou a špinavou alternativu je zde malý hack, který se může hodit:

>>> import json, ast
>>> r = {u'name': u'A', u'primary_key': 1}
>>> ast.literal_eval(json.dumps(r))
{'name': 'A', 'primary_key': 1}


  1. Správa uživatelů databáze s ClusterControl

  2. Nasazování aplikací na CDP Operational Database (COD)

  3. Redis:Amazon EC2 vs Elasticache

  4. MongoDB $atan