2017-06-05 31 views
0

分配,我有以下的MongoDB /猫鼬架构分配密钥和变量,而不需要在模式

var forumReplySchema = new Schema({ 
    userid : String, 
    username: String, 
    forumid: {type: String, default: '1'}, 
    message: {type: String, default: ''}, 
    time: Number, 
}); 

module.exports = mongoose.model('forum_replies', forumReplySchema); 

与下面的查询:

 forum_replies.findOne({forumid: forumid}).then(function (reply) { 
    currentReply.username = user.username; 
currentReply.rank = result.rank; 

}); 

目前username分配,因为我在有username属性架构。 Rank未分配的原因它不是在架构。

但是,有没有办法,我指定等级,而无需它在架构中定义?

编辑:又名分配秩论坛回复对象,而不需要用dB保存。

+0

是排名,你想在数据库存储新特性? –

+0

否@SamipSuwal我只想将IT存储在对象列表中。没有飙到db。只是想在同样的结果 – maria

回答

1

可以不加属性猫鼬文件。如果你想这样做,你需要先将它转换为普通对象。有几种方法可以解决这个问题。以下是其中之一。

reply.toObject(); 

然后你可以给它添加属性。

//you have currentReply in your code, I just want to show general idea here 
reply.rank = result.rank; 

这是你在找什么?

更新:

感谢您接受答案:)。也可以查看lean()选项,这将返回您纯JS对象,而无需手动进行转换。精益()也具有性能优势。

+0

存储没有测试,好像这就是我对我后, – maria

相关问题