我有一个下面定义的架构,如何通过流星模板更改预定义的架构键(summary:
键)?
Schemas.Books = new SimpleSchema(
{
summary: {
type: String
}
}
);
例如,我想通过路由器或用户输入定义的会话变量来更改此密钥。
答案 0 :(得分:0)
不确定,试试这个
如果你的架构是这样的
Books = new SimpleSchema(
{
summary: {
type: String
}
}
);
然后是tempalte助手,
Books._schema.summary.type = function() {
return Session.get("typeValue");
};
在我的项目中,我有这样的架构
RegisterSchema = new SimpleSchema({
name: {
type: String
},
email: {
type: String,
regEx: SimpleSchema.RegEx.Email
},
password: {
type: String,
label: "Password",
min: 8
},
confirmPassword: {
type: String,
label: "Confirm Password",
min: 8,
custom: function () {
if (this.value !== this.field('password').value) {
return "passwordMismatch";
}
}
}
});
我正在动态设置电子邮件的可选值,如
RegisterSchema._schema.email.optional = function() { return true };
这对我有用。
全部最好
答案 1 :(得分:0)
这不是我想做的事情,但我学会了一个新技巧:)
我想像这样更改我上面描述的架构键。
Books = new SimpleSchema(
{
bookName: {
type: String
}
}
);
使用summary:
bookName:
实际上我想根据用户信息(userId,userName等)动态定义架构键。