Anda dapat mengatur check_keys
ke False menurut sumber
:
test.insert(d,check_keys=False)
def insert(self, doc_or_docs, manipulate=True,
safe=None, check_keys=True, continue_on_error=False, **kwargs):
Memang berhasil:
In [28]: d = {'.aaa' : '.bbb'}
In [29]: test.insert(d,check_keys=False)
Out[29]: ObjectId('54ea604bf9664e211e8ed4e6')
Docstring menyatakan:
Anda tampaknya dapat menggunakan karakter apa pun selain hanya dua $
atau .
jadi garis bawah utama atau karakter lain apa pun akan baik-baik saja dan mungkin pilihan yang lebih baik.
Ada info di faq tentang escape :
Dan faq notasi titik menjelaskan mengapa menggunakan .
bukan ide yang bagus: