ember.js - tutorial - Ember Data y registros sucios
ember service (2)
¿Cuál es la forma recomendada de descartar los cambios realizados en los registros?
Tengo la siguiente lógica para revertir registros sucios a su estado original.
if controller.get(''isDirty'')
controller.get(''content'').rollback()
Esto funciona a menos que se haya realizado un intento fallido para comprometer el registro.
Si trato de confirmar los cambios y el servidor responde con errores, ya no es posible deshacer el registro de esta manera. En este caso, ¿Ember Data o RESTAdapter proporcionan un método integrado para revertir el registro a su estado original?
Estoy usando el DS.RESTAdapter
empaquetado con la revisión 11 de Ember Data
He encontrado algo que aparentemente funciona aunque no sé por qué. Esto es lo que hago en mi modelo:
App.User = DS.Model.extend({
becameInvalid: function(errors) {
this.get(''transaction'').rollback();
//this.rollback(); <- This doesn''t work. You get becameClean error.
}
});
crea / actualiza tu registro a través de una transacción en un enrutador. Ver más detalles aquí sobre cómo hacer eso.
var transaction = App.store.transaction()
transaction.createRecord(App.Foo);
transaction.commit()
transaction.rollback()