Node.js,Mongoose,Express - 验证经度和纬度的用户输入

时间:2014-07-11 01:34:29

标签: node.js mongodb express mongoose

我正在寻找有关如何最好地验证通过Express API路由保存到Mongodb的long / lat值的建议。

我见过一些例子,其中可以在模型中定义最小值和最大值,但我无法使其工作。这是我目前的模型 - 请参阅" geo":

var placeSchema = mongoose.Schema({
name: String,
geo: { type : [Number], index: '2d'},
tags: { type : [String], index: true },
create_date : {type: Date, "default": Date.now()}
});

我还可以在路线级别进行验证,或者在模型中使用pre(' save')事件。

有人可以告诉我应该在哪里这样做吗?

1 个答案:

答案 0 :(得分:0)

这些代码怎么样

placeSchema.path('geo').validate(function(geo){
   // do validation here
   // return geo.longitude > 0;
}, 'Longitude should be larger than 0');