顯示Collection項目我有一個模型和監視列表的集合骨幹 - 如何填充和模型
var Watchlist = Backbone.Model.extend({
'urlRoot': 'http://myurl/watchlists',
'defaults': {
id: null,
},
'initialize': function() {
this.set('movies', new MoviesCollection());
},
'parse': function(apiResponse){
console.log("parsing wlist model");
console.log(apiResponse);
return apiResponse;
}
});
var Watchlists = Backbone.Collection.extend({
'url': 'http://umovie.herokuapp.com/unsecure/watchlists',
'model': Watchlist,
'parse': function(apiResponse){
console.log("parsing wlist collection");
console.log(apiResponse);
return apiResponse;
}
});
也有一個模型和電影的集合:
var MovieModel = Backbone.Model.extend({
urlRoot: "http://umovie.herokuapp.com/movies",
defaults: {
trackId: "",
nameId: ""
},
parse: function(response){
console.log("parsing moviemodel");
this.trackId=response.trackId;
return response;
}
});
var MoviesCollection = Backbone.Collection.extend({
model:MovieModel
});
,你可以請看,Watchlist模型有一組電影。 如何在觀察列表模型更新時填充電影集合?它是否自動填充?
另外,我執行以下命令以顯示特定監視列表的電影,但預期它不工作...
<script type="text/template" id="watchlist-edit-template">
<h4><%= watchlist ? 'Edit' : 'Create new' %> Watchlist</h4>
<h5><%= watchlist ? '':'Enter watchlist name:' %></h5>
<textarea id="watchlistName" cols="50" rows="1"><%= watchlist? watchlist.name : '' %></textarea>
<hr>
<div id="hiddenWatchlistId" style="display:none;"><%= watchlist ? watchlist.id : 0 %></div>
<div class="list-group">
<% watchlist.movies.each(function(list){ %>
<a href="#" class="list-group-item"><%= list.get("trackName") %></a>
<% }); %>
</div>
</script>
的錯誤是「遺漏的類型錯誤:watchlist.movies.each不一個函數」 我不知道如何擺脫這種錯誤的...
當我顯示監視列表模式的對象,我收到以下內容: 對象{名:‘Liste2’,電影:數組[1],id:「563458d59f12f3030069949f」} 這讓我相信電影收藏是一個數組而不是一個集合。我對嗎?我應該如何解決這個問題?
我想我沒有正確填充電影集合。
你怎麼看待這一切? 感謝
看看這個http://backbonerelational.org/ –
看看一個與你的設置非常相似的工作示例:http:// stackoverflow。com/questions/33232006/backbone-js-fetch -json-to-model-get-returnes-undefined/33232298#33232298 – Yura
也看看[url vs urlRoot之間有什麼區別](http:// stackoverflow。 com/questions/23510106/what-is-the-difference-between-url-vs-urlroot/33324142#33324142),因爲它可能會變成你不需要'urlRoot'在你的模型上設置,當你已經設置在你的收藏。 – Yura