0
返回我有一个模型,看起来像这样:骨干JS建设从结果收集来自多个网址的
var BasicModel = Backbone.Model.extend({
defaults: {
a: '',
b: '',
c: '',
d: '',
e: ''
},
idAttribute: "f",
parse: function (data) {
return data;
},
initialize: function() {
console.log('Intialized');
},
constructor: function (attributes, options) {
Backbone.Model.apply(this, arguments);
}
});
集合是这样的:
var BasicCollection = Backbone.Collection.extend({
model: BasicModel,
url: urlCode
});
var ACollection = BasicCollection.extend({
parse: function (data) {
return data.a.b.c.d;
}
});
var aCollection = new ACollection();
和看法是这样的:
var BasicView = Backbone.View.extend({
tagName: 'tr',
template: _.template($('#basic-status-template').html()),
render: function() {
this.$el.html(this.template(this.model.attributes));
return this;
}
});
var BasicsView = Backbone.View.extend({
initialize: function() {
this.render();
},
});
这是如何收集提取看起来(其中构建的意见):
aCollection.fetch({
success: function() {
// View
var aView = BasicsView.extend({
el: '#foobar #table-body',
render: function() {
this.$el.html('');
aCollection.each(function (model) {
var x = new BasicView({
model: model
});
this.$el.append(x.render().el);
}.bind(this));
return this;
}
});
var app = new aView();
}
});
但是现在我在尝试向视图将填充的表中添加另一个细节时遇到问题。其中一列需要来自单独网址的数据。但我仍然希望它成为同一过程的一部分。
是否有办法从两个URL的结果中形成一个集合。 (即a,b,d和e来自URL 1,c来自URL 2)?
这样我所有需要改变的就是模板,它应该都是一样的。而不必改变其他东西的负载。
谢谢。
好的,谢谢。 – Kieran