MongoDB不支持其中帶有圓點的鍵,因此在導入之前,您必須預處理JSON文件以删除/替換它們,否則您将為各種問題做好準備。
沒有标準的解決方法可以解決此問題,最好的方法過于依賴于具體情況。但是,如果可能的話,我會避免使用任何關鍵的編碼器/解碼器方法,因為您将繼續永久性地給它帶來不便,因為JSON重組可能是一次性的成本。
解決方法似乎mongo不允許插入帶點(。)或美元符号($)的鍵,但是當我使用mongoimport工具導入其中包含點的JSON文件時,效果很好。驅動程序抱怨試圖插入該元素。
這是文檔在數據庫中的外觀:
{
"_id": {
"$oid": "..."
},"make": "saab","models": {
"9.7x": [
2007,2008,2009,2010
]
}
}
我是不是做錯了,不應該使用帶有外部數據的哈希圖(例如模型),還是可以以某種方式逃脫點?也許我在想太多類似Javascript的東西。
有話要說...