estoy usando pelota en la acción index del controlador de la siguiente Backbone.js:Backbone.js extraer resultados en caché
App.Controllers.PlanMembers = Backbone.Controller.extend({
routes: {
"": "index"
},
index: function() {
var planMembers = new App.Collections.PlanMembers();
planMembers.fetch({
success: function() {
var recoveryTeam = planMembers.select(function (planMember) {
return planMember.get("TeamMemberRole") == "RecoveryTeam";
});
var otherMembers = planMembers.select(function (planMember) {
return planMember.get("TeamMemberRole") == "Other";
});
new App.Views.Index({ collection: { name: "Team", members: recoveryTeam }, el: $('#recoveryTeam') });
new App.Views.Index({ collection: { name: "Team", members: otherMembers }, el: $('#otherTeam') });
},
error: function() {
alert('failure');
showErrorMessage("Error loading planMembers.");
}
});
}
});
El problema es que los resultados están siendo almacenados en caché. No recoge los cambios en la base de datos. ¿Hay alguna forma de decirle a backbone.js que no guarde en caché los resultados?
Sé que podría anular la URL de la colección y anexar una marca de tiempo, pero estoy buscando algo un poco más limpio que eso.
Mismo problema aquí. –
Intentando confirmar lo que estás preguntando.Hace una búsqueda que hace una llamada AJAX bajo las cubiertas que utiliza el navegador para hacer la llamada. ¿Y el navegador no realiza la llamada porque cumple las directivas de caché? Básicamente, esto puede no ser un problema de backbone.js ya que backbone.js no almacena en caché. Siempre reemplaza todos los modelos de la colección con lo que recibe. Tal vez agregue algunos detalles XHR del navegador a su pregunta y aclare un poco más lo que está preguntando. –