2016-09-26 156 views
0

我剛剛開始使用nodeexpress框架和mongo作爲數據庫。貓鼬查詢結果丟失字段

我創造了這樣的模式:

var JsonSchema = new Schema({                
type: String,                   
properties: {                   
    OBJECTID: Number,                 
    AREA: Number,                  
    PERIMETER: Number,                 
    ESYE_CODE: Number,                 
    Descriptio: String                 
},                      
geometry: {                    
    type: String,                  
    coordinates: [Number, Number]              
}                      
}); 

,然後我查詢:

router.get('/mapjson/:OBJECTID', function(req, res) { 
if(req.params.OBJECTID) { 
    Json.findOne({OBJECTID: req.params.OBJECTID }, {}, function(err, docs){ 
     res.json(docs); 
} else { 
    console.log("THERE WAS AN ERROR HERE!!!"); 
} 
}); 

但結果我得到缺少geometry領域。結果

樣品獲得:

{ 
"_id":"57e43ec60534d33ccc13099b", 
"type":"Feature", 
"properties":{ 
    "OBJECTID":212428, 
    "AREA":131.001991421, 
    "PERIMETER":49.9141344212, 
    "ESYE_CODE":147, 
    "Descriptio":"Ελληνικά" 
    } 
} 

和我所得到的,當我查詢從蒙戈外殼的集合:

db.points.findOne({'properties.OBJECTID': 212428}) 
{ 
    "_id" : ObjectId("57e43ec60534d33ccc13099b"), 
    "type" : "Feature", 
    "properties" : { 
      "OBJECTID" : 212428, 
      "AREA" : 131.001991421, 
      "PERIMETER" : 49.9141344212, 
      "ESYE_CODE" : 147, 
      "Descriptio" : "Ελληνικά" 
    }, 
    "geometry" : { 
      "type" : "Point", 
      "coordinates" : [ 
        23.812561006040106, 
        38.093951650544334 
      ] 
    } 
} 
+0

res.json(是錯誤的 –

+0

對不起,這是複製/粘貼錯誤,我修好了。 – Mes

+0

req.params.OBJECTID,搜索的對象在數據庫中有幾何?只有找到所有可以很好的測試。 –

回答

1

在座標可以設置類型數組:

geometry: {                    
    type: String,                  
    coordinates: Array              
} 
+0

我把它改成'Array',但我仍然得到相同的結果。 – Mes