Page Contents
Home > @loopback/rest-crud > defineCrudRestController
defineCrudRestController() function
Create (define) a CRUD Controller class for the given model.
Signature:
export declare function defineCrudRestController<T extends Entity, IdType, IdName extends keyof T, Relations extends object = {}>(modelCtor: typeof Entity & {
prototype: T & {
[key in IdName]: IdType;
};
}, options: CrudRestControllerOptions): CrudRestControllerCtor<T, IdType, IdName, Relations>;
Parameters
| Parameter | Type | Description |
|---|---|---|
| modelCtor | typeof Entity & { prototype: T & { \[key in IdName\]: IdType; }; } | A model class, e.g. `Product`. |
| options | [CrudRestControllerOptions](/doc/en/lb4/apidocs.rest-crud.crudrestcontrolleroptions.html) | Configuration options, e.g. `{basePath: '/products'}`. |
Returns:
CrudRestControllerCtor<T, IdType, IdName, Relations>
Example
const ProductController = defineCrudRestController<
Product,
typeof Product.prototype.id,
'id'
>(Product, {basePath: '/products'});
inject('repositories.ProductRepository')(
ProductController,
undefined,
0,
);
app.controller(ProductController);