1

我正在尝试使用 fetch 初始化骨干网中的集合,我认为这是:

initialize: function()
{
    _.bindAll(this, 'render', 'addItem', 'appendItem');

    this.collection = new MembersCollection();

    this.collection.bind('add', this.appendItem);

    this.collection.fetch({success: _.bind(function(blah)
    {
        console.log(blah);

        this.render();

    }, this)});
}

它似乎正在工作,我得到了一个成功的响应,具有正确数量的模型,它为每个模型呈现正确数量的视图,但是,如果我检查 model.attribute 值,它只包含我的默认值,没有来自服务器?

如果我检查我的 JSON 响应,我确实在那里看到了正确的数据,是否有什么我可能错过了设置数据所需的内容?

4

2 回答 2

2

我想我最近遇到了类似的问题。从模型定义中删除我的默认值解决了这个问题,我不需要它,所以把它留在那里。我认为,也许,如果你定义了默认值,那么你需要包括你要设置的所有属性。但不要引用我的话。在没有默认值的情况下尝试它,看看它是如何进行的。如果您仍然有问题,您可能希望向我们提供您的模型定义和响应中返回的 json 样本。

于 2012-07-09T04:46:19.953 回答
0

我有同样的问题——我的问题是由模型的解析方法引起的。

结果是,当为集合的 fetch 调用返回的数组中的每个项目创建模型时,会调用模型的 parse 方法。

从直接模型获取返回的 json/object 与集合返回数组中的 json/object 不同——这导致我的模型的 parse 方法在从数组项创建时返回 undefined。

于 2014-04-04T07:51:38.660 回答