gpt4 book ai didi

javascript - 主干模型验证未定义的属性

转载 作者:行者123 更新时间:2023-12-02 17:52:44 30 4
gpt4 key购买 nike

因此,我已经得到了我正在尝试验证的模型,根据书籍,这应该有效,但是我收到的属性未定义。

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

我错过了什么?

最佳答案

来自fine manual :

validate model.validate(attributes, options)

[...] By default validate is called before save, but can also be called before set if {validate:true} is passed.

所以validate是由 Backbone 调用的,而不是由您直接调用。您正在调用validate你自己:

myTodo.validate()

但没有传递任何参数,所以 attrsundefined因为,好吧,你没有传递它的值。

您应该让 Backbone 调用 validate当您调用myTodo.save()时或myTodo.set(new_values, validate: true) .

关于javascript - 主干模型验证未定义的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21213862/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com