关于流星的简单模式的一些问题

时间:2014-06-28 04:25:11

标签: meteor

对于那些使用Simple Schema for Meteor验证的人,我有一些问题(在使用它一段时间后):

1 SimpleSchema是否支持方括号表示法?所有示例都使用点表示法显示它。我做了以下方括号实现:

Schemas.NamesCollection = new SimpleSchema({
  name: {
    type: Object
  },
  "name[first_name]" : {
    type: String,
    optional: false,
    label: "First Name"
  },
  "name[last_name]" : {
    type: String,
    optional: false,
    label: "Last Name"
  }
});


{{> afQuickField name="name[first_name]"}}
{{> afQuickField name="name[last_name]"}}

我注意到表单验证工作得很好,因为我填写了表单,但最后将数据插入到集合中失败并出现验证错误(与表单验证之前已经过去的相同的错误但是现在插入失败了。)

很明显,有很多理由使用方括号表示法。 Dot符号有很多限制,尽管更具可读性。

2。查看上面定义架构的示例,架构中的键必须是对象中的完整路径。您必须声明name[first_name]为其分配架构,这意味着您不仅要定义first_name的属性,还要定义结构物体。 first_name 嵌套在name内。

例如,你不能这样做

Schemas.NamesCollection = new SimpleSchema({
  name: {
    type: Object
  },
  first_name : {
    type: String,
    optional: false,
    label: "First Name"
  },
  last_name : {
    type: String,
    optional: false,
    label: "Last Name"
  }
});

然后继续将first_namelast_name存储在name内,是吗?

0 个答案:

没有答案