1
我有一個fiddle here骨幹獲取和復位模型時模型添加到收藏
包含模型
Item = Backbone.Model.extend({....})
Apvdtl = Backbone.Model.extend()
和收集
Apvdtls = Backbone.Collection.extend({
model: Apvdtl
})
與Apvdtl型號 填充集合例如
apvdtls.add([{ itemid: 'c4676cef679a11e28b7a3085a942bd8e', qty: 10 },
{ itemid: '1da17339690f11e285d63085a942bd8e', qty: 5 }])
,併產生這種觀點
但什麼我嘗試做的是通過與ID獲取該項目,以使這樣的
視圖在此JSON File
ApvdtlView = Backbone.View.extend({
tagName: 'tr'
initialize: function(){
this.model.on('change', this.render, this);
this.template = _.template('<td><%=itemid%></td><td><%=qty%></td>');
},
render: function(){
item.set({'id': this.model.get('itemid')});
// item = {id: 'c4676cef679a11e28b7a3085a942bd8e'}
item.fetch(); // but this doesnt get the data
// this should contain this data after i fetch
// item = {"id": "c4676cef679a11e28b7a3085a942bd8e",
// "code": "prp125", "descriptor": "Paper", "price": "7.00"}
// build new data to render
var data = {
"itemid": item.get('descriptor'),
"qty": this.model.get('qty')
}
this.$el.html(this.template(data));
//this.$el.html(this.template(this.model.toJSON()));
return this;
}
});
感謝您的答案! =)但我的看法('ApvdtlView')不需要url,因爲我只是使用它來呈現集合中的「數據」('Apvdtls')。關於網址'https:// raw.github.com/jrsalunga/prism2/master/www/api/item.json'我只是試圖「在那裏獲取數據」而不是爲了保存。視圖數據('ApvdtlView')來自兩個模型:模型('Item')和從這個代碼'apvdtls.add([{itemid:'c4676cef679a11e28b7a3085a942bd8e',qty:10}]''所以我只是建立一個我的視圖的新數據集('ApvdtlView')而不是我的'ApvdtlView'模型('Apvdtl') – jrsalunga