Skip to main content

Manual validation

To manually validate DTO and get the I18nValidationError[] you can make use of the I18nContext or I18nService.

I18nContext

src/app.controller.ts
import { Controller, Get } from '@nestjs/common';
import { I18n, I18nContext } from 'nestjs-i18n';

@Controller()
export class AppController {
@Get()
async getHello(@I18n() i18n: I18nContext) {
let newUserCreateDto = new CreateUserDto();
let errors = await i18n.validate(newUserCreateDto);
if (errors > 0) {
return 'error'
}
return 'good';
}
}

I18nService

src/code.ts
import { I18n, I18nService } from 'nestjs-i18n';

@Controller()
export class Service {
constructor(i18nService: I18nService) {}

async validateUser(): bool {
let user = new CreateUserDto();
let newUserCreateDto = new CreateUserDto();
let errors = await i18n.validate(newUserCreateDto);
if (errors > 0) {
return false;
}
return true;
}
}