mirror of
https://github.com/jashkenas/backbone.git
synced 2026-04-30 03:00:06 -04:00
Merge pull request #2795 from akre54/shorter-defaults
Shorter defaults in model ctor
This commit is contained in:
@@ -244,16 +244,13 @@
|
||||
// Create a new model with the specified attributes. A client id (`cid`)
|
||||
// is automatically generated and assigned for you.
|
||||
var Model = Backbone.Model = function(attributes, options) {
|
||||
var defaults;
|
||||
var attrs = attributes || {};
|
||||
options || (options = {});
|
||||
this.cid = _.uniqueId('c');
|
||||
this.attributes = {};
|
||||
if (options.collection) this.collection = options.collection;
|
||||
if (options.parse) attrs = this.parse(attrs, options) || {};
|
||||
if (defaults = _.result(this, 'defaults')) {
|
||||
attrs = _.defaults({}, attrs, defaults);
|
||||
}
|
||||
attrs = _.defaults({}, attrs, _.result(this, 'defaults'));
|
||||
this.set(attrs, options);
|
||||
this.changed = {};
|
||||
this.initialize.apply(this, arguments);
|
||||
@@ -1368,7 +1365,7 @@
|
||||
|
||||
// Figure out the initial configuration. Do we need an iframe?
|
||||
// Is pushState desired ... is it available?
|
||||
this.options = _.extend({}, {root: '/'}, this.options, options);
|
||||
this.options = _.extend({root: '/'}, this.options, options);
|
||||
this.root = this.options.root;
|
||||
this._wantsHashChange = this.options.hashChange !== false;
|
||||
this._wantsPushState = !!this.options.pushState;
|
||||
|
||||
Reference in New Issue
Block a user