したがって、これまでの 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 を返すかに関係なく、とにかく値を格納します (フォームがエラー メッセージを短時間点滅させても)。これを正しく行う方法を理解するのに十分なほどカスタム検証を把握しているとは思わないので、たとえそれが正しい方向に私を押し上げているとしても、あらゆる助けをいただければ幸いです。