[英]Backbone model validation undefined attrs
因此,根据正在使用的书籍,我已经尝试验证模型,但是我收到的attrs未定义。
validate: (attrs, options)->
attrs
如果我继续这样做:
validate: ->
this.attributes
我可以很好地访问模型的属性,但是我认为这不是推荐的方法。
这是我的模型代码:
class Todo extends Backbone.Model
defaults:
title: 'default title'
completed: false
validate: (attrs, options)->
attrs
myTodo new Todo
myTodo.validate()
//returns false because attrs is undefined
我想念什么?
从精美的手册中 :
验证
model.validate(attributes, options)
[...]默认情况下,在
save
之前调用validate ,但是如果传递了{validate:true}
,也可以在set
之前调用{validate:true}
。
因此validate
是由Backbone而不是您直接调用的。 您正在打电话validate
自己:
myTodo.validate()
但未传递任何参数,因此undefined
attrs
,因为您没有传递其值。
您应该在调用myTodo.save()
或myTodo.set(new_values, validate: true)
时让Backbone呼叫validate
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.