2017-10-07 18 views
1

如何檢查MongoDB中的數據庫中存在的大學名稱

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

const mongoose = require('mongoose'); 
 
const Schema = mongoose.Schema; 
 

 
const UniversitySchema = new Schema({ 
 
\t university_name: { 
 
\t \t type:String 
 
\t }, 
 
\t status: { 
 
\t \t type: String, enum: ['active', 'inactive'] 
 
\t } 
 

 
}); 
 

 

 

 
const University = mongoose.model('university',UniversitySchema); 
 
module.exports = University;

如何檢查存在的大學名稱,並插入新的大學的MongoDB數據庫,如果不存在。這個怎麼做 。請幫助我。

回答

2

您可以使用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 
    } 
}) 
+0

它的工作原理,謝謝 –

0

在這種情況下,可以考慮使用upsert option,這意味着如果記錄已經存在,更新其信息。如果沒有,請在數據庫中插入一個新的。

它比執行findOne()更優化,然後再執行一個更新操作。

相關問題