簡體   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