sql >> Database >  >> NoSQL >> MongoDB

Python-woordenboek:u'-tekens verwijderen

Sommige databases zoals Sqlite3 laten u converter- en adapterfuncties definiëren, zodat u tekst kunt ophalen als str in plaats van unicode . Helaas biedt MongoDB deze optie niet voor de veelgebruikte typen zoals str, decimal of 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

Nadat Mongo-opties zijn geëlimineerd, blijft het schrijven van Python-code over om de conversie uit te voeren nadat de gegevens zijn opgehaald. Je zou een recursieve functie kunnen schrijven die het resultaat doorloopt om elk veld te converteren.

Als een snel en vies alternatief is hier een kleine hack die van pas kan komen:

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


  1. Hoe plaats je een afbeeldingsbestand in een json-object?

  2. Back-ups gebruiken om veelvoorkomende storingsscenario's voor MongoDB op te lossen

  3. Basisprincipes van MongoDB-databaseautomatisering met Chef

  4. Hadoop MapReduce Taakuitvoering stroomschema