型号:
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'
这个想法是每个设备都拥有一个控制器的子集合。我的简单问题是如何将模型添加到此子集合中?上面的代码似乎用数组覆盖了集合......
答案 0 :(得分:2)
您正在使用controllers
替换属性array
。由于它是一个集合,您需要使用add
或reset
,具体取决于您要执行的操作。