Meteor Upsert不添加现有值

时间:2015-08-02 17:12:00

标签: mongodb meteor

好的我有upsert功能按预期工作,但有以下问题。如果记录存在,我似乎无法更新现有数量。我查看了mongo文档,它说使用$ inc函数,但没有。 请看看,看看有什么不对。我已经尝试将{$ inc:}放在括号中,但它仍然无法正常工作。

提前谢谢。

 Stock.upsert(
                ProductType,

            {
                // Modifier
                $set: {
                    ProductType: ProductType,
                    ProductScent: ProductScent,
                    ProductName: ProductName,
                $inc: {ProductQTY: ProductQTY}


            }}
        );

1 个答案:

答案 0 :(得分:1)

第一个参数是 mongo选择器。这意味着,您正在搜索_id ProductType的文档。你的修饰符也有点偏。那么你想要做的是这样的事情:

Stock.upsert(
  {
    ProductType: ProductType,
    ProductScent: ProductScent,
    ProductName: ProductName,
  },
  {
    // Modifier
    $set: {
      ProductType: ProductType,
      ProductScent: ProductScent,
      ProductName: ProductName,
    },
    $inc: {ProductQTY: ProductQTY}
  }
);