所以到目前为止,我对 Collection2/Simple Schema 的体验充其量只是基本的。现在,我正在尝试根据 Type 集合中的文档验证“类型”的值。
@Data = new Mongo.Collection 'data'
Data.attachSchema new SimpleSchema
'types':
'type': [String]
'label': 'Types'
'custom': ->
if @isSet
Meteor.call 'isType', @value, (error, result) ->
if !result
Data.simpleSchema().namedContext('admin_update').addInvalidKeys [
'name': 'types'
'type': 'notAllowed'
]
'otherField':
'type': Number
'label': 'Other Field'
'optional': true
到目前为止,我的 isType 方法一直在正确地验证值,但是无论它返回 true 还是 false,它都会存储该值(即使表单会短暂地闪烁错误消息)。我认为我没有很好地掌握自定义验证来弄清楚如何正确地做到这一点,所以任何和所有的帮助都会受到赞赏,即使它只是把我推向正确的方向。