JSRUN 用代码说话

使用 Validation

编辑教程

使用 Validation

要使用验证,请使用class-validator。 示例如何在 TypeORM 中使用 class-validator:

import { Entity, PrimaryGeneratedColumn, Column } from "typeorm";
import { Contains, IsInt, Length, IsEmail, IsFQDN, IsDate, Min, Max } from "class-validator";

@Entity()
export class Post {
  @PrimaryGeneratedColumn()
  id: number;

  @Column()
  @Length(10, 20)
  title: string;

  @Column()
  @Contains("hello")
  text: string;

  @Column()
  @IsInt()
  @Min(0)
  @Max(10)
  rating: number;

  @Column()
  @IsEmail()
  email: string;

  @Column()
  @IsFQDN()
  site: string;

  @Column()
  @IsDate()
  createDate: Date;
}

验证:

import { getManager } from "typeorm";
import { validate } from "class-validator";

let post = new Post();
post.title = "Hello"; // 不应该通过
post.text = "this is a great post about hell world"; //不应该通过
post.rating = 11; //不应该通过
post.email = "google.com"; //不应该通过
post.site = "googlecom"; //不应该通过

const errors = await validate(post);
if (errors.length > 0) {
  throw new Error(`Validation failed!`);
} else {
  await getManager().save(post);
}
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
金额: 0
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟