diff --git a/lib/model.js b/lib/model.js index d9d65a09..6d6bc19b 100644 --- a/lib/model.js +++ b/lib/model.js @@ -418,6 +418,12 @@ ModelBaseClass.toString = function() { * @returns {Object} returns Plain JSON object */ ModelBaseClass.prototype.toObject = function(onlySchema, removeHidden, removeProtected) { + if (typeof onlySchema === 'object' && onlySchema != null) { + var options = onlySchema; + onlySchema = options.onlySchema; + removeHidden = options.removeHidden; + removeProtected = options.removeProtected; + } if (onlySchema === undefined) { onlySchema = true; } diff --git a/test/loopback-dl.test.js b/test/loopback-dl.test.js index a59480d3..17757b47 100644 --- a/test/loopback-dl.test.js +++ b/test/loopback-dl.test.js @@ -133,8 +133,8 @@ describe('ModelBuilder', function() { // Predefined property bio should be kept user.toObject().should.have.property('bio', 'me'); - user.toObject(true).should.have.property('bio', 'me'); - user.toObject(false).should.have.property('bio', 'me'); + user.toObject({onlySchema: true}).should.have.property('bio', 'me'); + user.toObject({onlySchema: false}).should.have.property('bio', 'me'); done(null, User); });