REST routes constructor for express and koa
.resources()
#11 3fecc44
const routes = createRest(root => {
// GET /users -> index()
// POST /users -> create()
// GET /users/:userId -> read()
// PUT /users/:userId -> update()
// PATCH /users/:userId -> patch()
// DELETE /users/:userId -> destroy()
root.resources('users', UsersController, {}, users => {
// GET /users/latests -> latest()
users.get('latest', UsersController.latest)
users.scope(':userId', userId => {
// GET /users/:userId/bio -> read()
// POST /users/:userId/bio -> create()
// PUT /users/:userId/bio -> update()
// DELETE /users/:userId/bio -> delete()
userId.crud('bio', UserBioController)
// And you can nest resources:
// GET /users/:userId/photos/ -> index()
// POST /users/:userId/photos/ -> create()
// GET /users/:userId/photos/:photoId -> read()
// PUT /users/:userId/photos/:photoId -> update()
// PATCH /users/:userId/photos/:photoId -> patch()
// DELETE /users/:userId/photos/:photoId -> destroy()
userId.resources('photos', PhotosController)
})
})
})
.resources()
e21a55a.crud()
d3f5f81const routes = createRest(root => {
// GET /demo read()
// POST /demo create()
// PUT /demo update()
// DELETE /demo destroy()
root.crud('demo', DemoController, {}, demo => {
// GET /demo/example example()
demo.get('example', function example(){})
// GET /demo/foobar
// POST /demo/foobar
// PUT /demo/foobar
// DELETE /demo/foobar
demo.crud('foobar', FooBarController, {}, foobar => {
// POST /demo/foobar/band band()
foobar.post('band', function band(){})
})
})
})