diff --git a/README.md b/README.md index 622e8e7..bb9a621 100644 --- a/README.md +++ b/README.md @@ -68,13 +68,15 @@ This extension for Keystone is intended to create a REST API very easy. Also is // Make sure keystone is initialized and started before // calling createRest + keystone.init(config); - keystone.start(); // Add routes with Keystone keystoneRestApi.createRest(keystone, { - apiRoot: '/api/v1/' + apiRoot: '/api/' }); + + keystone.start(); // Create Documentation and write it to a file fs.writeFileSync('api.md', keystoneRestApi.apiDocs(), 'UTF-8'); diff --git a/index.js b/index.js index 563e4de..1c9222a 100644 --- a/index.js +++ b/index.js @@ -369,9 +369,10 @@ function KeystoneRest() { if (err) { return _sendError(err, req, res, next); } - - var query = Model.find(criteria).skip(req.query.skip) - .limit(req.query.limit) + var limit = req.query.limit ? Number.parseInt(req.query.limit) : undefined; + var skip = req.query.skip ? Number.parseInt(req.query.skip) : undefined; + var query = Model.find(criteria).skip(skip) + .limit(limit) .sort(req.query.sort) .select(querySelect || selected); @@ -808,8 +809,12 @@ function KeystoneRest() { // Get and register the models _registerRestModels(keystone); - _.each(self.routes, function (route) { - keystone.app[route.method](route.route, route.middleware, route.handler); + const setCurrentRoutes = keystone.get('routes') + keystone.set('routes', app => { + setCurrentRoutes(app) + _.each(self.routes, function (route) { + app[route.method](route.route, route.middleware, route.handler); + }); }); };