diff --git a/Backbone.CollectionBinder.js b/Backbone.CollectionBinder.js index a63d4e0..f40c410 100644 --- a/Backbone.CollectionBinder.js +++ b/Backbone.CollectionBinder.js @@ -71,17 +71,7 @@ }, getManagerForModel: function(model){ - var i, elManager, elManagers = _.values(this._elManagers); - - for(i = 0; i < elManagers.length; i++){ - elManager = elManagers[i]; - - if(elManager.getModel() === model){ - return elManager; - } - } - - return undefined; + return this._elManagers[_.isObject(model)? model.cid : model]; }, _onCollectionAdd: function(model){ diff --git a/spec/javascripts/defaultBindings.spec.js b/spec/javascripts/defaultBindings.spec.js index 24228a1..85421cb 100644 --- a/spec/javascripts/defaultBindings.spec.js +++ b/spec/javascripts/defaultBindings.spec.js @@ -74,12 +74,12 @@ describe('default bindings', function(){ }); it('converter bindings', function(){ - var defaultConverter = function(direction, value){ + var defaultConverter = function(direction, value, key){ if(direction === Backbone.ModelBinder.Constants.ModelToView){ - return 'XXX' + value; + return key === 'isActive'? value : 'XXX' + value; } else { - return value.replace('XXX'); + return _.isString(value)? value.replace('XXX') : value; } };