2013-05-10 23 views
6

Mi è stato chiesto di rimuovere una coppia di attributi da un modello di backbone (che era facoltativo) dove esistono. Il mio primo intento era di inserire qualcosa come una callback before_save su un modello. Ma non ho trovato alcuna informazione su google.
è possibile farlo su un lato backbone?backbone.js imposta la richiamata prima di salvare?

risposta

13

Basta ignorare il valore predefinito Model.save e aggiungervi la richiamata.

var MyModel = Backbone.Model.extend({ 

    save: function (key, val, options) { 
    this.beforeSave(key, val, options); 
    return Backbone.Model.prototype.save.call(this, key, val, options); 
    }, 

    beforeSave: function (key, val, options) { 

    } 

}) 

Se si desidera rimuovere attributi particolari vengano inviati al server di quanto si possa ignorare Model.toJSON metodo.

+0

Bella risposta, mi piace l'approccio. – sachinjain024

Problemi correlati