Meteor 为什么插入到架构附加集合中无效?
比方说,我们有这样一个模式:Meteor 为什么插入到架构附加集合中无效?,meteor,simple-schema,Meteor,Simple Schema,比方说,我们有这样一个模式: Schemas.MyCollection = new SimpleSchema({ something: { type: Object } }); 我想在MyCollection中插入一些内容。例如: var myobj = { aaaaaa: 11111, bbbbbb: 22222 }; MyCollection.insert({something: myobj}); 我们的结局是: { _id: "s
Schemas.MyCollection = new SimpleSchema({
something: {
type: Object
}
});
我想在MyCollection中插入一些内容。例如:
var myobj = {
aaaaaa: 11111,
bbbbbb: 22222
};
MyCollection.insert({something: myobj});
我们的结局是:
{
_id: "someId",
something: {}
}
当我禁用简单模式检查(collection2)时,一切都按预期进行
简单模式没有报告错误(collection2),为什么它无效?@Seraph您的模式是错误的
Schemas.MyCollection = new SimpleSchema({
something: {
type: Object
},
'something.aaaaa': {
type: String
}
});
因此,如果您不想验证对象,您必须编写该对象的每个属性,或者您可以执行blackbox:true
:
something: {
type: Object,
blackbox: true
}
如果是服务器端操作,也可以执行myCollection.insert(doc,{validate:false})代码>
只需阅读文档:)@Seraph您的模式是错误的
Schemas.MyCollection = new SimpleSchema({
something: {
type: Object
},
'something.aaaaa': {
type: String
}
});
因此,如果您不想验证对象,您必须编写该对象的每个属性,或者您可以执行blackbox:true
:
something: {
type: Object,
blackbox: true
}
如果是服务器端操作,也可以执行myCollection.insert(doc,{validate:false})代码>
只需阅读文档:)以下是帮助您了解更多信息的参考:
以下是帮助您了解更多信息的参考资料:
请避免说脏话。多亏了和蔼的图书馆,在浪费了几个小时的工作之后,你也会说同样的话……我不在乎。你的问题充满了无用的废话,读起来很痛苦。你很生气,我们明白,但请在这里保持专业。请避免骂人。多亏了和蔼的图书馆,你会在几个小时的浪费工作后说同样的话……我不在乎。你的问题充满了无用的废话,读起来很痛苦。你生气了,我们明白了,但请在这里保持专业。我需要对象作为地图,所以黑盒:真看起来像解决方案。我需要对象作为地图,所以黑盒:真看起来像解决方案。