任何人都可以在mongoose中解释混合和缓冲数据类型的含义吗?
mongoose中混合数据类型的确切用法是什么。有没有办法存储日志数据(包含字符串和数字。
答案 0 :(得分:3)
Mongoose MIX架构类型
“任何事情都有”SchemaType,它的灵活性来自于它难以维护的权衡。混合可通过Schema.Types.Mixed或通过传递空对象文字来获得。以下是等效的:
var Any = new Schema({ any: {} });
var Any = new Schema({ any: Schema.Types.Mixed });
由于它是无模式类型,您可以将值更改为您喜欢的任何其他值,但Mongoose无法自动检测/保存这些更改。要“告诉”Mongoose混合类型的值已更改,请调用文档的.markModified(path)方法,将路径传递给刚刚更改的混合类型。
person.anything = { x: [3, 4, { y: "changed" }] };
person.markModified('anything');
person.save(); // anything will now get saved
(原始内容取自http://mongoosejs.com/docs/api.html#document_Document-markModified)
Mongoose Buffer Schema类型
当您经常使用以二进制形式保存的项目时使用缓冲区类型,一个很好的例子就是图像。