繁体   English   中英

在Meteor中获取或创建

[英]Get or create in Meteor

如何在Meteor中创建get_or_create函数(类似于https://docs.djangoproject.com/en/1.8/ref/models/querysets/#get-or-create )?

我必须使用吗?

var element = Elements.findOne({number: 32});
if (element) {
  var elementId = element._id;
} else {
  // override element
  element = Elements.insert({number: 32});
  var elementId = element._id;
}

// do something with elementId

这似乎不那么方便。

我想知道Meteor或MongoDB是否已经内置了像Collection.upsert()这样的东西。

Checkout MongoDB findAndModify 下面是一个实现您所描述内容的示例。

collection.findAndModify({
  query: { _id: "someId" },
  update: {
    $setOnInsert: { foo: "bar" }
  },
  new: true,   // return new doc if one is upserted
  upsert: true // insert document if it does not exist
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM