如何避免在mongoose中重复的条目
我正在用mongoose创build一个新的模式,并尝试从用户那里获得input。 我希望没有重复的条目正在更新serverIP
,因为unique : true
添加了unique : true
。 但是,这不能按预期工作,重复条目正在通过。
以下是示例代码:
var mongoose = require('mongoose'), Schema = mongoose.Schema; var ServerSchema = new Schema({ serverIp: { type : String , unique : true }, Name: { type: String }, serverType: {type: String , required : true }, created_date: {type: Date, default: Date.now}, updated_date: {type: Date, default: Date.now} });
我已经检查过CreateIndexfunction,但不知道如何用我的代码来实现。
我从来没有在后端工作,所以请原谅,如果这是一个新手的问题。
看起来你已经做了独特的索引(在架构级别)后,在数据库中插入一些logging。
请按照以下步骤避免重复。
1)放下你的分贝:
$ mongo
> use <db-name>; > db.dropDatabase();
2)现在在您已经完成的模式级别进行索引。
它将避免重复的logging插入与相同的字段serverIp(在你的情况下)值。
为了确保索引,请使用命令
> db.db_name.getIndexes()
尝试在字段serverIp
上创build唯一的索引,
ServerSchema.index({serverIp: 1}, {unique: true});
创build模式后,必须重新启动mongo。
我有同样的问题试图添加独特的:真正的我的文章标题。 我放弃了数据库,重新启动我的本地服务器,并在我的terminal重新启动了mongo。 这是我看来唯一的工作。