2012-11-10 57 views
1

我遇到了一些問題,導致我在牆上撞了幾天頭。MongoDb:密鑰名稱中的空格?

考慮以下文件:

{ 
    '_id': '5d7de43ac7baaa0ff2c4ae2bd000518a', 
    'Some Complex Name': { 
     'data': { 
      'simpleKey': [ 
       { 
        'name': 'Bob', 
        'age': 30 
       }, 
       { 
        'name': 'Sam', 
        'age': 31 
       }, 
       { 
        'name': 'George', 
        'age': 20 
       } 
      ] 
     } 
    } 
} 

在我的JavaScript的理解,我瞭解到,我要提到的「一些系統名稱」以下列方式(從map功能的範圍內) :

var stuff = this['Some Complex Name'] 

從大廈,我就可以用下面的訪問名稱:

var names = []; 
for (var i in this['Some Complex Name'].data.simpleKey) { 
    names.push(this['Some Complex Name'].data.simpleKey[i].name); 
} 
emit(this._id, names); 

不幸的是,我錯了地方上的這一點,因爲我得到了如下的錯誤

 "errmsg" : "exception: map invoke failed: JS Error: TypeError: this['Some Complex Name'] has no properties nofile_b:2" 

因此,我的問題:如何將I /正常/訪問「一些複雜的名稱」鍵?

獎金將是一些文件來解釋這一點。

謝謝!

回答