backbone-nested icon indicating copy to clipboard operation
backbone-nested copied to clipboard

model.clear() does not work when model is invalid

Open pgilad opened this issue 8 years ago • 2 comments

model.clear() does not work when model does not pass validation: https://github.com/afeld/backbone-nested/blob/master/backbone-nested.js#L118-L120

  1. What is the logic behind even checking if model is valid when clearing it?
  2. this.validate is supposed to return undefined. What is the reason behind this check?
  3. Code does not make sense.

pgilad avatar Jul 30 '15 14:07 pgilad

Just bumped into to this issue myself - doesn't make any sense ...

fabien avatar Mar 03 '16 13:03 fabien

We just noticed this too. It does seem a bit odd, but after some further investigation it's actually replicating existing Backbone behaviour:

Backbone.Model.prototype.clear() will run Backbone.Model.prototype.set(), which will validate the model before setting.

You can get past this by passing the validate option as false:

someNestedModel.clear({validate: false});

jacobbuck avatar May 06 '16 01:05 jacobbuck