nest中的注解

复制代码
//cat.entity.ts
import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
import { Document } from 'mongoose';

export type CatDocument = Cat & Document;

@Schema()
export class Cat {
  @Prop()
  name: string;

  @Prop()
  age: number;

  @Prop()
  breed: string;
}

export const CatSchema = SchemaFactory.createForClass(Cat);
  • Prop:这是一个装饰器,用于在模式类中定义文档的各个属性。你可以使用它来指定字段的数据类型、是否必填、默认值等属性。

  • Schema :这是一个类装饰器,用于定义Mongoose模式的结构。它允许你指定模式的元数据,比如集合名、版本键、时间戳等。 英/ˈskiːmə/模式

  • SchemaFactory :这是一个工具函数,用于从定义的模式类中创建实际的Mongoose模式对象。通常,你会使用createForClass方法从一个类定义中创建模式。

Cat类是一个模式类,它使用@Schema()装饰器标记。每个属性使用@Prop()装饰器来定义字段的属性。CatSchema是一个Mongoose模式对象,它是由SchemaFactory.createForClass(Cat)创建的,可以被NestJS模块使用,以便在你的应用程序中执行CRUD操作和其他数据库相关的任务。

相关推荐
無名路人4 分钟前
uniApp 小程序 vue3 app.vue静默登录其他页面等待登录完成方式二
前端·微信小程序·ai编程
CoCo的编程之路8 分钟前
2026 前端效能飞跃:深度解析智能助手的页面构建最大化方案
前端·人工智能·ai编程·智能编程助手·文心快码baiducomate
Dxy123931021614 分钟前
Python 去除 HTML 标签获取纯文本
开发语言·python·html
砚底藏山河32 分钟前
python、JavaScript 、JAVA,定制化数据服务,助力业务高效落地
java·javascript·python
JavaAgent架构师37 分钟前
前端AI工程化(一):AI通信协议深度解析
前端·人工智能
11_x39 分钟前
JS 底层:乖宝宝引擎和乖宝宝声明
javascript
洛的地理研学39 分钟前
Python下载并处理MOD13A3植被指数数据
开发语言·python
flex罗小黑39 分钟前
前端手机号脱敏的 4 个层级,你在第几层?
javascript
林恒smileZAZ40 分钟前
前端如何让图片、视频、pdf等文件在浏览器直接下载而非预览
前端·pdf
humcomm42 分钟前
Java 新特性2026年5月速览
java·开发语言