在Backbone.js中形成多个集合和模型的问题

时间:2014-12-27 14:04:07

标签: json backbone.js collections models

我在创建多个集合和模型时遇到问题。我正在尝试构建一个基本的Backbone.js集合。

我有两个问题。

  1. 查看传递给视图的控制台日志,我可以看到Event模型实际上并未创建(属性中没有ID:' No ID')。我知道收集月份形成月模型,但我无法解释为什么事件不会形成事件模型。
  2. 只有在使用reset:true初始化Months集合时才会形成集合。我不知道如何解释这个
  3. 我有一个模型Months的{​​{1}}集合。模型Month包含模型Month的{​​{1}}集合,如下所示:

    Events

    我想在这里解释的JSON示例:

    Event

    任何帮助将不胜感激

    谢谢

1 个答案:

答案 0 :(得分:1)

完全删除默认值中的id id是后端存在的id的表示;如果存在Backbone模型上的id,则库假定您正在使用后端中存在的模型(并且在那里具有相应的id)。
如果模型尚未持久化到数据源,则模型没有id,因此应为空。在功能上,当模型没有定义id时,在这种情况下,主干将在POST上执行PUT而不是save()

{reset:true}在整个集合上触发显式重置事件(而不是每个模型的默认set),但从服务器获取模型不需要这样做。 为了访问所获取的模型,您应该实现一个回调函数,它将模型的fetch方法的响应作为参数。当您致电this.fetch()时,会返回您尚未处理的承诺。