@fastify-userland/typeorm-query-runner
v1.0.0
Published
Fastify typeorm QueryRunner
Downloads
127
Maintainers
Readme
@fastify-userland/typeorm-query-runner
A plugin for Fastify that adds support for typrorm QueryRunner and Transaction
.
Supports Fastify versions 4.x.
Support TypeScript
Install
# npm
npm i @fastify-userland/typeorm-query-runner
# pnpm
pnpm add @fastify-userland/typeorm-query-runner
# yarn
yarn add @fastify-userland/typeorm-query-runner
Usage
const fastify = require('fastify')()
fastify.register(require('@fastify-userland/typeorm-query-runner'), {
dataSource: dataSource,
transaction: true,
match: request => request.routerPath.startsWith('/v2'),
respIsError: (respStr) => respStr === '{"status":false}'
})
fastify.get('/', async (req, reply) => {
console.log(req.queryRunner)
console.log(req.queryRunner.manager)
await req.queryRunner.manager.insert();
reply.send({ hello: 'world' })
})
fastify.listen(3000)
Options
dataSource
(Required): TypeORM dataSourcetransaction
(Optional): Whether to bind the life cycle of a thing to a request. - default:false
- Receiving requests: opening transaction
- Return response: close transaction
- Requesting an error: rolling back transaction
match
(Optional): Only matching requests will enable the plugin. - default:() => true
- Receiving requests: opening transaction
- Return response: close transaction
- Requesting an error: rolling back transaction
match: request => {
return request.routerPath.startsWith('/v2')
}
respIsError
(Optional): When the response matches the condition, it is considered an error - default:() => false
respIsError: (respStr) => {
return respStr === '{"status":false}'
}
License
Licensed under MIT.