You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Footprints Trailpack. This trailpack provides the footprint interface, which
other trailpacks such as trailpack-waterline
and trailpack-knex implement,
as well as a suite of tests that Footprint implementations should pass.
What are Footprints?
Footprints automatically generate easy-to-use RESTful endpoints for your models.
Install
$ npm install --save trailpack-footprints
Configure
// config/main.jsmodule.exports={packs: [// ... other trailpacksrequire('trailpack-footprints')]}
// config/footprints.jsmodule.exports={/** * Generate routes for controller handlers. * You can set controllers to true/false to enable/disable * automatic footprints routes globaly */controllers: {/** * Default methods to accept for routes generated from controller handlers. */method: '*',/** * List of controllers to ignore; that is, do not generate footprint routes * for them. */ignore: []},/** * Generate conventional Create, Read, Update, and Delete (CRUD) routes for * each Model. */models: {options: {/** * The max number of objects to return by default. Can be overridden in * the request using the ?limit argument. */defaultLimit: 100,/** * Subscribe to changes on requested models via WebSocket * (support provided by trailpack-websocket) */watch: false,/** * Whether to populate all model associations by default (for "find") */populate: true},actions: {create: true,find: true,update: true,destroy: true,/** * Specify which "association" endpoints to activate. */createAssociation: true,findAssociation: true,updateAssociation: true,destroyAssociation: true}},/** * Prefix your footprint route paths */prefix: '/api/v1'}
API
api.services.FootprintService
The purpose of FootprintService is to transform and forward queries to the datastore.
create (modelName, values, [options])
param
required?
description
example
modelName
Yes
The name of the model to create (in api.models)
User
values
Yes
An object containing the values of the record to create
{ username: 'admin' }
options
No
Datastore-specific options
find (modelName, criteria, [options])
param
required?
description
example
modelName
Yes
The name of the model to search for (in api.models)