Generates routes conformant to the JSON API specification for Mongoose models
- Source:
Methods
(inner) allowed(model, method) → {string}
Returns allowed requester type value for model and method
Parameters:
Name | Type | Description |
---|---|---|
model |
Object | Mongoose model |
method |
string | HTTP method |
- Source:
Returns:
allowed value (e.g. "public", "user", or "admin)
- Type
- string
(inner) compiledQueryConditions(req, conditions, model, method, done)
Callbacks Mongoose query conditions compiled from two separate conditions
Primary conditions are passed as parameter "conditions"
Secondary conditions are determined from model using route name
Parameters:
Name | Type | Description |
---|---|---|
req |
Object | Express request object |
conditions |
Object | Primary query conditions |
model |
Object | Mongoose model (optional) |
method |
string | HTTP method (optional) |
done |
callback |
- Source:
(inner) modelQueryConditions(req, model, method, done)
Callbacks a model's query conditions given request user status
Parameters:
Name | Type | Description |
---|---|---|
req |
Object | Express request object |
model |
Object | Mongoose model |
method |
string | HTTP method (optional) |
done |
callback |
- Source:
(inner) normalizeRelationships(relationships) → {Object}
Normalizes object of relationships from request
Parameters:
Name | Type | Description |
---|---|---|
relationships |
Object | Request relationships |
- Source:
Returns:
Normalized relationships
- Type
- Object
(inner) routeModelDeleteObjectResource(app, Model)
Routes DELETE requests to resource for individual resource objects for app and Model
Parameters:
Name | Type | Description |
---|---|---|
app |
Object | Express app |
Model |
Object | Mongoose model |
- Source:
(inner) routeModelGetObjectResource(app, model)
Routes GET requests to resource for individual resource objects for app and model
Parameters:
Name | Type | Description |
---|---|---|
app |
Object | Express app |
model |
model | Mongoose model |
- Source:
(inner) routeModelGetObjectsResource(app, model)
Routes GET requests to resource for collections of resource objects for app and model
Parameters:
Name | Type | Description |
---|---|---|
app |
Object | Express app |
model |
model | Mongoose model |
- Source:
(inner) routeModelPatchObjectResource(app, Model)
Routes POST requests to resource for individual resource objects for app and Model
Parameters:
Name | Type | Description |
---|---|---|
app |
Object | Express app |
Model |
Object | Mongoose model |
- Source:
(inner) routeModelPostObjectResource(app, Model)
Routes POST requests to resource for individual resource objects for app and Model
Parameters:
Name | Type | Description |
---|---|---|
app |
Object | Express app |
Model |
Object | Mongoose model |
- Source:
(inner) routeModelResource(app, model, method, path, done)
Routes requests to resource callback for app, model, method and path
Parameters:
Name | Type | Description |
---|---|---|
app |
Object | Express app |
model |
model | Mongoose model |
method |
string | HTTP method (lowercase, e.g "get") |
path |
string | Path to resource |
done |
function | Express route callback expecting req and res as parameters |
- Source:
(inner) routeModelResources(app)
Establish middleware that generates routes conformant to the JSON API specification for app and Mongoose models
Parameters:
Name | Type | Description |
---|---|---|
app |
Object | Express app |
- Source:
(inner) routeResource(app, method, path, middleware, done)
Routes requests to resource callback for app, method, path and middleware
Parameters:
Name | Type | Description |
---|---|---|
app |
Object | Express app |
method |
string | HTTP method (lowercase, e.g "get") |
path |
string | Path to resource |
middleware |
Object | Dictionary of middleware boolean or function values to use for route |
done |
function | Express route callback expecting req and res as parameters |
- Source:
(inner) saveRelationshipsToDocument(document, document, done)
Saves all provided relationships to document
Parameters:
Name | Type | Description |
---|---|---|
document |
Object | Mongoose document |
document |
Object | Key-value object of relationships |
done |
callback |
- Source:
(inner) validateQueryData(req, data, model, method, done)
Callbacks error with array of validation errors if query data do not conform to model's value restrictions given requester's status (e.g. public, user, admin)
Parameters:
Name | Type | Description |
---|---|---|
req |
Object | Express request object |
data |
Object | Query data |
model |
Object | Mongoose model (optional) |
method |
string | HTTP method (optional) |
done |
function | Error-first callback function expecting no other parameters |
- Source:
(inner) validateRequestBody(model)
Returns Express route middleware that validates request body against JSON API specification and URL for optional model
Parameters:
Name | Type | Description |
---|---|---|
model |
Object | Mongoose model (optional) |
- Source:
(inner) validateRequestUrl()
Validates request URL against Mongoose needs
- Source: