Javascript 如何将主干模型插入子集合?
型号: 收藏:Javascript 如何将主干模型插入子集合?,javascript,backbone.js,coffeescript,Javascript,Backbone.js,Coffeescript,型号: 收藏: class Device extends Backbone.Model url: '/device' initialize: -> console.log "Device model created..." @set controllers: new Controllers class Controller extends Backbone.Model 代码: 错误消息(在“控制器”上使用.each
class Device extends Backbone.Model
url: '/device'
initialize: ->
console.log "Device model created..."
@set
controllers: new Controllers
class Controller extends Backbone.Model
代码:
错误消息(在“控制器”上使用.each时):
TypeError:对象[Object],对象[Object]没有方法“each”
其思想是每个设备都有一个子控制器集合。我的简单问题是如何将模型添加到此子集合?上面的代码似乎用数组覆盖集合…您正在用数组替换属性
控制器。由于它是一个集合,您需要使用添加
或重置
,具体取决于您想要执行的操作。是的。我意识到了这一点。但是如何在模型的属性上使用add-on呢?用javascript术语:device.get('controllers').add([{…}])
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]