[英]mongo db , node express , extract an element from output returned by mongodb
对于第一段代码,console.log(“ ff:” + ff)的输出结果完全一样:
ff:{_id:sd845y3hishofiuwhei,全名:“ sachin”}
console.log("ff JSON : "+JSON.stringify(ff)); // this line prints like below :
ff JSON:[{“ _ id”:“ sd845y3hishofiuwhei”,“全名”:“ sachin”}]
我怎样才能在一个单独的变量中分别获得“ sachin”?
var fullname=SampleModel.find({uname:req.session.uname},{fullname : true},function(err,ff){
if(!err){
console.log("ff : "+ff);
console.log("ff JSON : "+JSON.stringify(ff));
return ff;
}else {
return null;
}
});
下面的代码块给出了诸如“无效的对象ID”之类的错误。 可能是什么问题?
var ret= AnotherModel.find({_id : { $nin : ["1","2"] } }, function(err,details){
if(!err) {
res.send(details);
}
else {
console.log("Error : "+err);
res.send(err);
}
});
我正在像这样实现textarea
<textarea id="myarea" cols="100" rows="20" ></textarea>
当我更改行时,输出框会更改其高度,但是当我更改“ cols”时,输出框的宽度不会更改。 输出框的宽度也较小,我同时检查了chrome和mozilla。 有什么解决方案? 谢谢
我知道您使用的是mongoose,而不仅仅是mongodb驱动程序。
在第一段代码中,ff值不是字符串,而是对象数组。
您可以执行以下操作来访问“ sachin”变量: var fullname = ff[0].fullname;
当然,最好遍历数组,但是您可以理解。
如果只想检索一个对象,则应改用“ findOne”函数,然后便可以像这样访问“ sachin”: var fullname = ff.fullname;
对于第二个问题,您应该使用查询系统。 查询是延迟的请求,您可以对其进行更精细的链接和调整。 要延迟查询,只需省略回调函数: var query = Model.find({});
然后,根据需要添加所需的过滤器: query.where('_id').nin(['1', '2']);
最后,执行它:
query.exec(function (err, docs) {
// called when the `query.complete` or `query.error` are called
// internally
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.