- Notifications
You must be signed in to change notification settings - Fork18
typeorm/typeorm-routing-controllers-extensions
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This extension for TypeORM provides handy decorators that can be used withrouting-controllers.
- Install module:
npm install typeorm-routing-controllers-extensions --save
- Install routing-controllers:
npm install routing-controllers --save
- That's all, start using decorators!
All decorators can be used on properties and constructor arguments, e.g. you can use bothproperty and constructor injection.
Creates entity from the request parameter.
Example:
import{JsonController,Get}from"routing-controllers";import{EntityFromParam}from"typeorm-routing-controllers-extensions";import{User}from"../entity/User";@JsonController()exportclassUserController{ @Get("/users/:id")get(@EntityFromParam("id")user:User){returnuser;}}
Creates entity from the request query parameter.
Example:
import{JsonController,Get}from"routing-controllers";import{EntityFromQuery}from"typeorm-routing-controllers-extensions";import{User}from"../entity/User";@JsonController()exportclassUserController{ @Get("/users")get(@EntityFromQuery("id")user:User){returnuser;}}
Creates entity from the request cookie.
Example:
import{JsonController,Get}from"routing-controllers";import{EntityFromCookie}from"typeorm-routing-controllers-extensions";import{User}from"../entity/User";@JsonController()exportclassUserController{ @Get("/users")get(@EntityFromCookie("userId")user:User){returnuser;}}
Creates entity from the request body.
Example:
import{JsonController,Post}from"routing-controllers";import{EntityFromBody}from"typeorm-routing-controllers-extensions";import{User}from"../entity/User";@JsonController()exportclassUserController{ @Post("/users")save(@EntityFromBody()user:User){returnthis.userRepository.persist(user);}}
Creates entity from the request's body parameter.
Example:
import{JsonController,Post}from"routing-controllers";import{EntityFromBodyParam}from"typeorm-routing-controllers-extensions";import{User}from"../entity/User";@JsonController()exportclassUserController{ @Post("/users")save(@EntityFromBodyParam("user")user:User){returnthis.userRepository.persist(user);}}
Each decorator acceptsEntityParamOptions
which has following options:
connection?: string
Name of the connection to be used in TypeORM. By default, its "default" connection.
required: boolean
Indicate if this parameter's value is required.If its required and client didn't pass a value, routing-controllers will throw an error.
parse: boolean
Specifies "parseJson" option to routing-controllers.
type: Function
Entity type. Automatically retrieved from entity param's type, but in some cases,for example if you are using array of entities it should be passed explicitly.
property: boolean
Property to find by. If not specified, then entity will be fetched by its primary keys.
Take a look on samples in./sample for examples of usages.
About
TypeORM and Routing-Controllers integration library.
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors3
Uh oh!
There was an error while loading.Please reload this page.