2011-05-31 22 views

Respuesta

0

Hay algunas validaciones plugins para columna vertebral pero no me gusta, terminé con esto:

... 
validate: (attrs) -> 
    helper = @validationHelper attrs 
    helper.check 'name', (v) -> "can't be blank" if _(v).isBlank() 
    helper.check 'version', (v) -> "can't be blank" if _(v).isBlank() 
    helper.check 'organization', (v) -> "can't be blank" if _(v).isBlank() 
    helper.errors() 
... 

Y aquí está el ayudante:

_(Backbone.Model.prototype).extend 
    validationHelper: (attrs) -> 
     helper = 
     _errors: {} 
     check: (name, validator) -> 
      return unless attrs and (name of attrs) 
      msg = validator attrs[name] 
      (@_errors[name] ?= []).push msg if msg 
      @ 
     errors: -> if _(@_errors).any() then @_errors else null 
     return helper 
Cuestiones relacionadas