Javascript Mongoose要求唯一,如果存在,请修改并保存

Javascript Mongoose要求唯一,如果存在,请修改并保存,javascript,node.js,database,mongodb,mongoose,Javascript,Node.js,Database,Mongodb,Mongoose,我需要保持我的slug的唯一性,但是如果默认情况下它们会创建相同的slug,我仍然希望接受新条目 例如,列出杂货店: 输入: [ { "name": "Grocery Store", "location": "Bellevue" }, { "name": "Grocery Store", "location": &

我需要保持我的slug的唯一性,但是如果默认情况下它们会创建相同的slug,我仍然希望接受新条目

例如,列出杂货店:

输入:

[
  {
    "name": "Grocery Store",
    "location": "Bellevue"
  },
  {
    "name": "Grocery Store",
    "location": "Seattle"
  },
  {
    "name": "Grocery Store",
    "location": "Seattle"
  },
  {
    "name": "Grocery Store",
    "location": "Seattle"
  }
]
另存为:

[
  {
    "name": "Grocery Store",
    "location": "Bellevue",
    "slug": "grocery-store-bellevue"
  },
  {
    "name": "Grocery Store",
    "location": "Seattle",
    "slug": "grocery-store-seattle"
  },
  {
    "name": "Grocery Store",
    "location": "Seattle",
    "slug": "grocery-store-seattle-1"
  },
  {
    "name": "Grocery Store",
    "location": "Seattle",
    "slug": "grocery-store-seattle-2"
  }
]
需要slug的模式:

slug: {
  type: String,
  unique: true
},
我的pre('save')…截至目前

// Create project slug from name and location
StoreSchema.pre('save', function(next) {
  this.slug = slugify(this.name + '-' + this.location, { lower: true });

  next();
});