首页 > 其他分享 >使用 Validation

使用 Validation

时间:2024-04-03 19:56:06浏览次数:23  
标签:string Column 使用 import post Validation class

使用 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);
}
  编辑此页

标签:string,Column,使用,import,post,Validation,class
From: https://www.cnblogs.com/sexintercourse/p/18113410

相关文章

  • win11使用cython将py文件打包成pyd文件
    准备工作:安装VisualStudioC编译器未安装C编译器时,编译pyd会出现报错。你可以使用VisualStudio的C编译器,或MinGW编译器。由于VisualStudio的C编译器安装方便,而MinGW较复杂,这里介绍安装VisualStudio的方法。所需文件链接:https://pan.baidu.com/s/1lLKdY0o--pAxe2jCs......
  • 在 PowerShell 中,您可以使用以下命令来管理 DNS 相关的任务以及 DNS 缓存
    在PowerShell中,您可以使用以下命令来管理DNS相关的任务以及DNS缓存:获取当前计算机的DNS客户端配置信息powershellCopyCodeGet-DnsClientGet-DnsClientInterfaceAlias       InterfaceConnectionSpecificSuffixConnectionSpecificSuffixRegi......
  • GPT4不限制使用次数了!GPT5即将推出了!
    今天登录到ChatGPTPlus账户,出现了如下提示:已经没有了数量和时间限制的提示。更改前:每3小时限制40次(团队计划为100次);更改后:可能会应用使用限制。GPT-4放开限制身边订阅了ChatGPTPlus的朋友也发现了有ChatGPT里的GPT-4,也变成了上面的情况。网络上也有人很多人反......
  • MybatisPlus分页插件的使用
    目录......
  • Python函数(一):函数的声明、调用以及参数的使用
    目录为何要用到函数函数的定义和调用函数的参数参数的传递参数的类型 return语句为何要用到函数通常我们编写一段代码是为了实现特定的功能,比如想得到一段数字序列中的最大值、最小值和平均值并输出一个字典,编写一段代码如下:num=[96,85,69,82,52,99,72]m......
  • 从基础到高级,带你深入了解和使用curl命令(一)
    前言在网络通信和数据传输中,curl命令是一个功能强大且广泛使用的工具。它可以与各种协议进行通信,如HTTP、HTTPS、FTP等,并支持各种操作,如下载文件、发送请求、测试API等。本文将从基础开始,介绍curl命令的基本用法,然后深入探讨其高级功能和实用技巧。curl简介curl是常用的命令......
  • FlowableAPI的使用
    //它涉及启动流程定义的新流程实例。RuntimeServiceruntimeService=processEngine.getRuntimeService();//RepositoryService可能是使用Flowable引擎时需要的第一个服务。RepositoryServicerepositoryService=processEngine.getRepositoryService();//围绕任务......
  • 从基础到高级,带你深入了解和使用curl命令(二)
    前言之前我们介绍了curl命令的请求网络,设置代理等操作,本文我们继续来介绍curl命令的操作,本文我们将会介绍curl命令中有关cookie的操作。获取cookie要获取服务器发送的Cookie,可以使用curl命令的-c选项,将Cookie保存到文件中。例如:curl-ccookiec.txthttp://www.baidu.com......
  • 【进来一起刷Java题】Java中使用空对象引用调用静态方法的奇特现象 附题目+解析 | ((Te
    目录一、题目二、解析三、答案:一、题目有关下述Java代码描述正确的选项是____。答案直接点目录里的跳转。publicclassTestClass{  privatestaticvoidtestMethod(){    System.out.println("testMethod");  }  publicstaticvoidmain(Str......
  • Python 使用matplotlib创建各种静态、动态、交互式和3D图表的功能
    在Python中,你可以使用各种库来创建和显示图表。其中,最常用的库之一是matplotlib,它提供了创建各种静态、动态、交互式和3D图表的功能。另一个流行的库是seaborn,它基于matplotlib,并提供了更高级别的界面,用于绘制有吸引力的统计图形。以下是一个使用matplotlib创建并显示简单折线......