我需要将地点的名称和坐标写入mongo。
数据来自三个输入字段:
<input type="text" class="form-control" id="address" placeholder="Search" ng-model="placeData.text">
<input type="text" class="coords" id="lng" ng-model="placeData.lng">
<input type="text" class="coords" id="lat" ng-model="placeData.lat">
使用Angular进行处理:
$scope.createPlace = function() {
$http.post('/api/places', $scope.placeData)
.success(function(data) {
$scope.places = data;
console.log(data);
})
.error(function(data) {
console.log('Error: ' + data);
});
};
转到Node.js:
// define model =================
var Place = mongoose.model('Place', {
text : String,
lat: Number,
lng: Number
});
// routes ======================================================================
// api ---------------------------------------------------------------------
// create place and send back all places after creation
app.post('/api/places', function(req, res) {
// create a place, information comes from AJAX request from Angular
Place.create({
text : req.body.text,
lat: req.body.lat,
lng: req.body.lng,
done : false
}, function(err, place) {
if (err)
res.send(err);
// get and return all the places after you create another
Place.find(function(err, places) {
if (err)
res.send(err)
res.json(places);
});
});
});
它有效,但问题是mongo只从第一个输入ng-model =“placeData.text”接收数据。我做错了什么?