@youba/nestjs-dbvalidator

NestJS module dbvalidator

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
@youba/nestjs-dbvalidator
651.1.18 days ago3 years agoMinified + gzip package size for @youba/nestjs-dbvalidator in KB

Readme

nestjs DbValidator Module has some database check validation

Installation

npm install @youba/nestjs-dbvalidator

About nestjs-DbValidator

This module has some costume database validators using class-validator and typeorm

Quick Start

To configure the module you need to add typeorm configuration using register() Example : ```typescript // src/xModule/x.module.ts //... import { DbValidatorsModule } from '@youba/nestjs-dbvalidator'; import { ConfigModule, ConfigService } from '@nestjs/config'; @Module({ imports: DbValidatorsModule.register({
type: 'mysql',
host:  "localhost",
port: 3306,
username:"root",
password:"password",
database:"demo"})],
providers:
StreetService, controllers: StreetController, }) export class StreetModule { constructor() {} } ``` Now you can use the nestjs-dbvalidator, First validator is "IsExist" to check if the value is already exist in the table, For example: ```typescript // src/xModule/x.dto.ts import { IsExist } from '@youba/nestjs-dbvalidator'; export class StreetDto { @IsNotEmpty() name: string; @IsNotEmpty() @Validate(IsExist,
[ { table: "city", column: "id"}] )
idcity: number; ... ``` Ps : In version 1.1.0 you can use IsArray to trait the value as an Array and check if all the values of the array are exists in the table, as an example: ```typescript @Validate(IsExist,
[ { table: "city", column: "id", isArray:true}] )
idcities: any; ``` For the secand validator "IsUnique" is for checking if the value is unique in the table, For example: ```typescript // src/xModule/x.dto.ts import { IsUnique } from '@youba/nestjs-dbvalidator'; export class StreetDto { @IsNotEmpty()
@Validate(IsUnique, 
[ { table: "company", column: "name" }] )
name: string; ... ``` You can Add 'message' as a parameter to costume your error message

To Do

  • X Implement to these validators to check array of values
  • Implement to IsUnique to ignore an x value for the update case

License

Licensed under the MIT License - see the LICENSE file for details.