2015-11-01 3 views
0

У меня есть данные, которые необходимо вставить в коллекцию mongodb, но поля не должны содержать кавычек после их ввода. Это то, что я делаю:Как избежать котировок при вставке JSON в mongodb

var newStep = { 
     start : startvalue, 
     end : endvalue 
    } 

    $.ajax({ 
     type: 'POST', 
     data: newStep, 
     url: '/addstep', 
     dataType: 'JSON' 
    }).done(function(data) { 
      $.each(data, function(){ 
         //do something 
      }); 
    }); 

После вставки закончилась. данные выглядит следующим образом:

{ 
"_id" : ObjectId("56348aa4962428f243c85b26"), 
"start" : "13.0464655", 
"end" : "77.59167" 
} 

Я хочу, чтобы это выглядело как этот

{ 
"_id" : ObjectId("56348aa4962428f243c85b26"), 
"start" : 13.0464655, 
"end" : 77.59167 
} 

Как избежать кавычки вокруг поля начинаются и заканчиваются. Заранее спасибо.

EDIT 1: Я не знаю, если это влияет на что-нибудь, но это мой маршрут:

router.post('/addStep', function(req, res) { 
var db = req.db; 

var start = req.body.start; 
var end = req.body.end; 

var collection = db.get('steplist'); 

collection.update(
    { 
      //some conditions 
    }, 
    { 
      $setOnInsert: req.body 
    }, 
    { 
      "upsert": true 
    }, function(err, result){ 
    res.send(
     (err === null) ? { msg: '' } : { msg: err } 
    ); 

ответ

0

Вы можете конвертировать startValue и endValue плавать типа, прежде чем вставлять их.

var newStep = { 
    start : parseFloat(startValue), 
    end : parseFloat(endValue) 
} 

Это будет вставлять их как float вместо строки.

+0

Я пробовал это, все еще получая одинаковые результаты. – roadrev

+0

Можете ли вы поделиться кодом для вставки базы данных? –

+0

Я отредактировал вопрос, чтобы включить его. Благодарю. – roadrev

Смежные вопросы