Remove an attribute from a Backbone.js model

backbone.js, javascript

Solution

Are you looking for `model.unset` ?

Remove an attribute by deleting it from the internal attributes hash. Fires a "change" event unless silent is passed as an option.

You can find the documentation here.

Problem

Is there a way to remove an attribute from a Backbone model? Reason being is I pass up extra data on save to perform certain actions, but then that data gets automatically added to my model The documentation says to not edit the model.attributes directly, so the only other method I see to do this would be to use the set method and set the attribute to null, but that is not ideal ``` var myModel = new Model() myModel.save({name:'Holla', specialAttr:'Please Remove me'}) myModel.set({tempAttr:null}) if(myModel.attributes['specialAttr'] == null){ alert("Model does not have a specialAttr") } ``` I've also tried removing it from the attributes property, but it doesn't really remove it.

Original source