Backbone.js 主干模型内的集合
我想创建一个主干模型,并将另一个模型的集合存储到其属性中。所以,有父模型和子模型。每个父对象在其属性中都有一个或多个子对象作为数组存储 JSON将是这样的Backbone.js 主干模型内的集合,backbone.js,Backbone.js,我想创建一个主干模型,并将另一个模型的集合存储到其属性中。所以,有父模型和子模型。每个父对象在其属性中都有一个或多个子对象作为数组存储 JSON将是这样的 Parent = { name: 'Name', age: 'Age', children: [{name: 'Name', age: 'Age'}, {name: 'Name', age: 'Age'}, {name: 'Name', age: 'Age'}] } 我
Parent = {
name: 'Name',
age: 'Age',
children:
[{name: 'Name', age: 'Age'},
{name: 'Name', age: 'Age'},
{name: 'Name', age: 'Age'}]
}
我试图创建两个模型,并在另一个模型中插入一个,但仍然没有解决方案。我不想使用解析或其他服务器功能
那么,有什么解决方案或更好的方法来实现这一点吗?据我所知,您希望使用此数据创建一个模型,并且如果模型中有
子项,则在模型中创建相同模型的集合
var Person = Backbone.Model.extend({
initialize: function(){
this.set('children', new Persons(this.get('children')));
}
});
var Persons = Backbone.Collection.extend({
model: Person
});
在创建模型时-initialize:function(){…}
让我们使用子数组-this.get('children')
并收集新成员(…)
this.set('children',…)代码>
-在控制台中运行并查看结果。您必须重写父模型的
parse()
方法。或者使用像Backbone.relational
这样的库。实际上,我不做服务器方面的事情,因为这个应用程序只在DOM中显示输出,而不显示数据库。你不必做任何服务器方面的事情,你只需覆盖.fetch()
来使用任何源[甚至是普通对象],并相应地.parse()
。否则,首先创建模型,然后创建集合,然后创建yourModel.set('attributeName',collection)
,这样做很好^^^它确实有效,但我的计划实际上是在创建子模型时将每个子模型嵌套到父模型中。我不会一次写入所有子项。您可以通过var newChild=newperson({})
创建新的子项,然后将其添加到您的父项parent.get('children')。添加(newChild)
其中parent
是当前的现有人员。