Backbone.js backbonejs中的嵌套模型和集合
我正在寻找一种解决方案,将嵌套的json加载到父模型中,最终呈现在屏幕上。 我有一个这种格式的嵌套json:Backbone.js backbonejs中的嵌套模型和集合,backbone.js,backbone-views,backbone.js-collections,backbone-model,Backbone.js,Backbone Views,Backbone.js Collections,Backbone Model,我正在寻找一种解决方案,将嵌套的json加载到父模型中,最终呈现在屏幕上。 我有一个这种格式的嵌套json: { "name":"Hotel-A", "description":"5 star rating", "geographicAddress":{ "streetAddress":"343,Market st", "city":"San Jose", "state":"CA", "country"
{
"name":"Hotel-A",
"description":"5 star rating",
"geographicAddress":{
"streetAddress":"343,Market st",
"city":"San Jose",
"state":"CA",
"country":"USA",
"postalCode":"34523"
},
"id":"338a947b-c488-46a9-b68f-640fcda38577"
}
我有一个父模型,它进一步参考了geographicAddress和geographicPoint模型
这就是它的样子:
父模型:
defaults:{
"id" : "",
"name" : "",
"description" : "",
"geographicAddress": new geoAddress(),
}
父集合:
addParentModel: function(parent) {
var newParentModel = new this.model();
newParentModel.set({
id: parent.id,
name: parent.name,
description: parent.description,
address:geoAddress.streetAddress,
city:geoAddress.city,
state:geoAddress.state,
postalCode:geoAddress.postalCode
});
地理地址模型:
defaults:{
"streetAddress":"",
"city":"",
"state":"",
"country":"",
"postalCode":""
}
有人能告诉我一种方法,用嵌套的json填充父模型并用html呈现它吗
谢谢。我建议重写主干。Model的
parse
函数,以便按照您的需要构造数据。从主干文档中:
函数传递原始响应对象,并应返回
要在模型上设置的属性哈希。默认实现是
无操作,只需通过JSON响应。如果发生以下情况,请覆盖此
您需要使用预先存在的API或更好的命名空间
答复
我创建了一个更完整的演示,演示如何使用parse
创建模型,然后在此处呈现集合:
var PlaceModel = Backbone.Model.extend({
defaults: {
"id": "",
"name": "",
"description": "",
"geographicAddress": new AddressModel()
},
parse: function(data) {
return {
id: data.id,
name: data.name,
description: data.description,
geographicAddress: new AddressModel(data.geographicAddress)
};
}
});