MongoDB不支持其中带有圆点的键,因此在导入之前,您必须预处理JSON文件以删除/替换它们,否则您将为各种问题做好准备。
没有标准的解决方法可以解决此问题,最好的方法过于依赖于具体情况。但是,如果可能的话,我会避免使用任何关键的编码器/解码器方法,因为您将继续永久性地给它带来不便,因为JSON重组可能是一次性的成本。
解决方法似乎mongo不允许插入带点(。)或美元符号($)的键,但是当我使用mongoimport工具导入其中包含点的JSON文件时,效果很好。驱动程序抱怨试图插入该元素。
这是文档在数据库中的外观:
{
"_id": {
"$oid": "..."
},"make": "saab","models": {
"9.7x": [
2007,2008,2009,2010
]
}
}
我是不是做错了,不应该使用带有外部数据的哈希图(例如模型),还是可以以某种方式逃脱点?也许我在想太多类似Javascript的东西。
有话要说...