无法对MongoDB记录执行更新

时间:2014-05-12 22:24:16

标签: mongodb

尝试了近2个小时后,我发布了这个问题

$.ajax( {
 type: "POST" ,
 url: "http://127.0.0.1:28017/test/stocks/?q={symbol:"+symbol+"}",
contentType: "application/json; charset=utf-8",
 data: JSON.stringify( { "$set" : { 'tbq' : "3" } } ),
dataType: "json"
 } );

mongodb内的样本

{
        "_id" : ObjectId("537148b99aae10a52d6b5dbe"),
        "symbol" : "KIYT",
        "tbq" : "566"

}

有人可以告诉我为什么更新没有工作?

我关注此链接http://docs.mongolab.com/restapi/#update-documents

1 个答案:

答案 0 :(得分:0)

你需要做一个PUT而不是POST,因为POST会尝试向Mongo添加一个新项目。您还需要提供您尝试更新的项目的_id。例如;

$.ajax({
  type: "PUT" ,
  url: 'http://127.0.0.1:28017/test/stocks/?q={"_id":537148b99aae10a52d6b5dbe}',
  contentType: "application/json",
  data: JSON.stringify( { "$set" : { 'tbq' : "3" } } ),
  dataType: "json"
});