MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Dictionnaire Python :suppression de vos caractères

Certaines bases de données telles que Sqlite3 vous permettent de définir des fonctions de convertisseur et d'adaptateur afin que vous puissiez récupérer du texte en tant que str plutôt que unicode . Malheureusement, MongoDB ne fournit cette option pour aucun des types couramment nécessaires tels que str, decimal ou 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

Après avoir éliminé les options Mongo, cela laisse écrire du code Python pour effectuer la conversion après la récupération des données. Vous pouvez écrire une fonction récursive qui parcourt le résultat pour convertir chaque champ.

Comme alternative simple et rapide, voici une petite astuce qui peut être utile :

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