由于我已将Backbone从0.9.2升级到0.9.9,因此出现一些错误。验证方法在主干上调用默认属性
当我使用散列默认值实例化新模型时。验证方法是调用以验证这些值并失败。
基本上我想用新消息设置contactModel,但是这个消息应该与默认的不同。这就是为什么在这个模型的实例中验证失败。 由于未在实例中调用验证方法,因此在骨干0.9.2上正常工作。
有人可以解释这是什么问题吗?
这是我BackboneModel:
class ContactModel extends Backbone.Model
defaults :
message : 'Initial message'
validate : (attrs_) =>
if attrs_.message.toString() is @.defaults.message.toString()
return 'Same message'
if attrs_.message.length < 55
return 'Your message is too short buddy'
sync : =>
#Custom Sync implementation
这是我BackboneView:
class ContactPageView extends AbstractView
id : 'contact-page'
template : null
model : null
events :
'keypress #contactTextArea' : 'onKeyPress'
'submit #contactForm' : 'submit'
init : ->
@model = new ContactModel()
console.log @model.get 'message'
#Print "undefined"
@model.bind "success", @success, this
@model.bind "error", @error, this
@template = _.template $('#template_page_contact').html()
谢谢哥们:) – socrateisabot