如何在mongodb数据库中检查已有的大学名称

router.post('/university',function(req,res,next){ University.create(req.body).then(function(detail){ res.send(detail); }); }); 

 const mongoose = require('mongoose'); const Schema = mongoose.Schema; const UniversitySchema = new Schema({ university_name: { type:String }, status: { type: String, enum: ['active', 'inactive'] } }); const University = mongoose.model('university',UniversitySchema); module.exports = University; 

如果不存在,如何检查已有的大学名称并将新的大学插入MongoDB数据库。 这个怎么做 。 请帮助我。

你可以使用findOne 。 如果大学已经存在,做一些你需要的事情,如果大学不存在然后保存这个:

 University.findOne({ university_name: req.body.university_name }, function(err, data) { if (data) { // output university or do something else } else { // save new university to collection } }) 

在这种情况下,可以考虑使用upsert选项 ,这意味着如果logging已经存在,则更新其信息。 如果没有,请在数据库中插入一个新的。

它比执行findOne()更加优化,接下来是更多的更新操作。