1

楷模:

class Device extends Backbone.Model
    url: '/device'
    initialize: ->
        console.log "Device model created..."
        @set
            controllers: new Controllers

class Controller extends Backbone.Model

收藏:

class Controllers extends Backbone.Collection
    model: Controller

代码:

device = new Device
controller = new Controller
controller1 = new Controller
controller.set
   name: "state1"
   value: "on"
controller1.set
   name: "state2"
   value: "on"
device.set 
   id: 1
   name: "foo"
   controllers: [controller, controller1]

错误消息(在“控制器”上使用 .each 时):

TypeError: Object [object Object],[object Object] 没有方法'each'

这个想法是每个设备都拥有一个控制器的子集合。我的简单问题是如何将模型添加到这个子集合中?上面的代码似乎用数组覆盖了集合......

4

1 回答 1

2

您将属性替换controllersarray. 由于它是一个集合,因此您需要使用addreset,具体取决于您想要做什么。

于 2012-06-18T21:35:17.210 回答