0
我都存储在文档中收集,当我试图通过findOne找回它,它返回我的错误的结果: 我的猫鼬模式是这样的:findOne没有返回正确的结果(蒙戈DB和的NodeJS)
var db = require('../db');
var mongoose = db.mongoose_var;
var companySchema = mongoose.Schema({
companyName:String
});
module.exports = mongoose.model('Company',companySchema);
然后我用我server.js为:
var CompanySchema = require('./schemas/companySchema');
,当我试图找到已插入的记录如下:
CompanySchema.findOne({'Company.companyName':jsonObj.companyName},function(err,companyName){
console.log('companyName foudn:'+companyName);
if(companyName !== null){
res.status(404).json({status:'Name already in the DB'});
return;
}else{...
它无法找到这条记录,但它的返回可能是第一条记录。 Folloing记录存在于thedb:
当我试图加入另一家公司,并利用该findOne检查,如果该名称已经存在,findOne只返回该记录。我的日志网页摘要
而蒙戈外壳程序只返回正确的结果。
在蒙戈外壳,我使用 “” 场周围和价值观,而不是在findOne API。 由于提前
我可以在晚上测试,然后更新线程**但是**我记得尝试每种可能的组合和结果都是一样的。我会再检查一次。 但即使我以错误的方式将字段放在findOne(** **,value)中,它也不应该返回任何成功的结果。 **在这种情况下,我期待空对象**。 –
准确地说,查询将返回null。你不会以错误的方式投入这个领域。您正在查询的字段(Company.companyName)不存在。 companyName是公司集合中的字段。所以findOne应该返回null与您的查询。 –
但是当前查询没有返回null。查看主要问题中终端窗口的第二个屏幕截图。我正在通过findOne寻找“someCompanyName2”,并且它正在返回“someComapanyName1” –