Я пытаюсь добавить новых пользователей в базу данных Mongo, включая их местоположение в виде объекта GeoJSON.Я использую этот пакет для предопределения объекта Point для пользовательской схемы: https://www.npmjs.com/package/mongoose-geojson-schema
В частности, схема выглядит следующим образом:
UserSchema = mongoose.Schema(
{
first_name:String,
last_name:String,
username:String,
avatar:String, //string to image location in server / public
current_user_location: mongoose.Schema.Types.Point
},
{ collection: 'users' });
var User = mongoose.model('User', UserSchema);
Тогда мой маршрут выглядит следующим образом:
var express = require('express');
var router = express.Router();
var User = require('../models/user');
router.post('/addUser', function (req, res) {
var data = req.body;
new User({
first_name:data.first_name,
last_name:data.last_name,
username:data.user_name,
avatar:data.avatar_link, //string to image location in server / public
current_user_location: {
type: "Point",
coordinates: [data.longitude, data.latitude] //[12.123456, 13.134578]
}
}).save(function (err) {
if (err) {
console.log(err);
}
} else {
console.log("done");
}
});
Затем, когда я использую Почтальон для отправки тела запроса, он возвращает ошибку
Ошибка приведения к точке для значения "{тип: 'Точка', координаты: ['12 .123456', '13 .134578']} "at path" current_user_location "
Вот изображение тела запроса: Тело запроса addUser почтальона
Но , когда я изменяю значение «координаты» в маршруте на статические координаты (комментарий после него [12.123456, 13.134578]) и проверяю маршрут с помощью Почтальона, я получаю ОК, и новый пользователь добавляется в базу данных.
Есть ли что-то, чего мне не хватает при добавлении значений переменных к объектам GeoJSON внутри тел запросов?