До сих пор у меня магистрально-реляционная работа работала довольно хорошо. У меня есть отношения и обратные отношения, хорошо налаженные (см. ниже). Когда я сначала вызываю .fetch()
для своего экземпляра модели Country
, массив nominees
идеально разбивается на модели nominee
.
Однако когда я позже снова вызываю .fetch()
, эти связанные модели не обновляются, даже если данные nominee
изменились (например, количество голосов увеличилось). По существу кажется, что метод Backbone .set()
изначально понимает отношения, но не впоследствии.
Модель страны
var Country = Backbone.RelationalModel.extend({
baseUrl : config.service.url + '/country',
url : function () {
return this.baseUrl;
},
relations : [
{
type : Backbone.HasMany,
key : 'nominees',
relatedModel : Nominee,
collectionType : Nominee_Collection,
reverseRelation : {
key : 'country',
includeInJSON : false
}
}
]
});
Ответ JSON на country.fetch()
{
"entrant_count" : 1234,
"vote_count" : 1234,
"nominees" : [
{
"id" : 3,
"name" : "John Doe",
"vote_count" : 1,
"user_can_vote" : true
},
{
"id" : 4,
"name" : "Marty McFly",
"vote_count" : 2,
"user_can_vote" : true
}
]
}
Любая помощь будет принята с благодарностью, как всегда.