Beberapa database seperti Sqlite3 memungkinkan Anda menentukan fungsi konverter dan adaptor sehingga Anda dapat mengambil teks sebagai str daripada unicode . Sayangnya, MongoDB tidak menyediakan opsi ini untuk jenis yang umum dibutuhkan seperti str, desimal, atau 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
Setelah menghilangkan opsi Mongo, yang meninggalkan penulisan kode Python untuk melakukan konversi setelah data diambil. Anda dapat menulis fungsi rekursif yang melintasi hasil untuk mengonversi setiap bidang.
Sebagai alternatif cepat dan kotor, berikut adalah sedikit peretasan yang mungkin berguna:
>>> import json, ast
>>> r = {u'name': u'A', u'primary_key': 1}
>>> ast.literal_eval(json.dumps(r))
{'name': 'A', 'primary_key': 1}