ram*_*min 4 mongoose mongodb node.js mongoose-schema
我有这个架构(例如):
var WordSchema = new Schema({
word: {
type: String
}
});
module.exports = mongoose.model('Word', WordSchema);
Run Code Online (Sandbox Code Playgroud)
在猫鼬中创建新文档时如何添加新属性?像这样的东西:
let Word = require("../models/word");
let initWord = "hello";
word = new Word({
word: initWord,
length: initWord.length
});
word.save(function(error) {
if (error) {
//some code
} else {
//some code
}
});
Run Code Online (Sandbox Code Playgroud)
但这不起作用
默认情况下,Mongoose 不允许您动态添加字段到文档中。
\n但是,如果您创建模式时将 strict 选项设置为 false,则可以:
\nvar WordSchema = new Schema({\nword: {\n type: String\n}\n}, {strict: false});\nRun Code Online (Sandbox Code Playgroud)\n为了获取不在架构中的属性,您需要使用\xc2\xa0a 特殊的 getter 形式:
\ndoc.get('length')\nRun Code Online (Sandbox Code Playgroud)\n或者通过调用以下命令将文档转换为普通的旧 JavaScript 对象:
\ndoc.toObject()\nRun Code Online (Sandbox Code Playgroud)\n在检索到的模式对象上。
\n| 归档时间: |
|
| 查看次数: |
2048 次 |
| 最近记录: |