Tengo una validación de formulario anidado en mi aplicación nestjs, que devuelve el siguiente resultado cuando un campo tiene algún error:
Mensaje de error actual: "products.0.amount A quantidade do produto é obrigatória"
Mensaje de error esperado: "A quantidade do produto é obrigatória"
Para los ejemplos anteriores, tengo un formulario con un atributo llamado product que es una matriz de objetos
El problema es que no quiero devolver el nombre de la propiedad adjunto al mensaje, quiero devolver un mensaje limpio, legible para los usuarios finales.
export class CheckoutForm { @ValidateNested({ always: true }) @Type(() => ProductForm) products: ProductForm[]; } export class ProductForm { @IsString({ always: true, message: 'O nome do produto é obrigatório' }) name: string; @Min(1, { always: true, message: 'O preço do produto é obrigatório' }) value: number; @IsNotEmpty({ always: true, message: 'A quantidade do produto é obrigatória', }) amount: number; }Parece que este es un problema abierto con el validador de clase. https://github.com/typestack/class-validator/issues/614#issuecomment-807255434
Parece haber problemas de validación anidados si hay más de un nivel, lo que explicaría los problemas que está teniendo.