Dot运算符不提取Mongoose Document对象的子属性 [英] Dot operator not fetching child properties of a Mongoose Document object
本文介绍了Dot运算符不提取Mongoose Document对象的子属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
console.log('>>>>>>user = '+ user);
输出
>>>>>>user = { username: 'user1',
salt: '3303187e50a64889b41a7a1c66d3d3c10b9dec638fdd033bee1221d30d01c5e1',
hash: 'a174c206d88bee1594bb081dbd32d53420f6ef3d6322104f3d0722d58bc8dd8d',
_id: 52d3177481daf59c11000001,
__v: 0 }
但是
console.log('>>>>>>user.hash = '+ user.hash);
输出
>>>>>>user.hash = undefined
可能导致此问题的原因是什么?
What could be causing this?
编辑:有趣的是, user._id
,(仅 it)有效。
Interestingly, user._id
, (and only it) works.
推荐答案
这完全是一个猫鼬问题。
It's totally a mongoose issue.
解决方案不是去无架构。我正在使用 strict:false
定义我的模式时(为了使我的数据库模式更少)
A solution was to not go schema-less. I was using strict: false
when defining my schema (for making my database schema-less)
var Users = mongoose.model('Users', new mongoose.Schema({
},{strict:false}));
添加哈希
这里解决了它。
var Users = mongoose.model('Users', new mongoose.Schema({
hash: String
},{strict:false}));
这篇关于Dot运算符不提取Mongoose Document对象的子属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文