Ответ 1
Вероятно, потому, что модели имеют одинаковый идентификатор.
Коллекция Backbone не позволяет модели с повторяющимися значениями id. (см. commit)
Соответствующая коллекция захватывает группу друзей, а затем использует reset
для сохранения всех новых друзей. Проблема, которую я испытываю, заключается в том, что она добавляет только 1 друга в коллекцию.
Я сделал console.log
на cModels
, и он показывал более 300 объектов в массиве, поэтому я знаю, что существует не только 1. Любая причина, по которой reset будет добавлять только 1?
Вот моя коллекция:
FriendsCollection = Backbone.Collection.extend({
model: UserModel,
getFriends: function () {
$.post(baseUrl + dataFriendsUrl, $.proxy(function(data) {
var friends = $.parseJSON(data);
var cModels = [];
for(var key in friends.data) {
var user = new UserModel();
user.set({
fbid: friends.data[key].id,
username: friends.data[key].name
});
cModels.push(user);
}
this.reset(cModels);
console.log(this);
}, this));
}
});
И модели выглядят отлично, после проверки их с помощью инструментов разработчика.
Вероятно, потому, что модели имеют одинаковый идентификатор.
Коллекция Backbone не позволяет модели с повторяющимися значениями id. (см. commit)