У меня есть модель, которая хранит некоторые другие модели в массиве атрибутов. Однако, когда эти модели хранятся, я не хочу поддерживать подмодули вокруг - вместо этого я хочу сохранить первичные ключи, а затем, когда модель будет извлечена с сервера, ее синтаксический анализ будет «восстанавливать» их путем выбора соответствующих моделей.Backbone.js разбор для сохранения
Каков наилучший подход к достижению этого? Ближайший я пришел, чтобы получить его на работу является переопределение метод синхронизации:
sync : function(method, model, options) {
var topics = this.get('topics');
model.attributes.topics = _.pluck(topics, 'id');
var ret = Backbone.Model.prototype.sync.call(this, method, model, options);
this.attributes.topics = topics;
return ret;
},
но регулярно выходит из строя, оставив ключи в атрибутах вместо полных моделей & поэтому сбой.
функция Анализировать (слегка перефразировать):
parse : function(response) {
response.topics = _.map(response.topics, function(item) {
return app.topics.getByPK(item);
}
return response;
}
Как выглядит ваша функция 'parse'? – kalley
Я добавил его (или, по крайней мере, соответствующую часть) выше. – futuraprime