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操作和其他数据库相关的任务。

相关推荐
fruge7 小时前
前端文档自动化:用 VitePress 搭建团队技术文档(含自动部署)
运维·前端·自动化
丸码8 小时前
Java异常体系全解析
java·开发语言
q***72198 小时前
PHP使用Redis实战实录2:Redis扩展方法和PHP连接Redis的多种方案
开发语言·redis·php
k***82518 小时前
python爬虫——爬取全年天气数据并做可视化分析
开发语言·爬虫·python
IMPYLH8 小时前
Lua 的 require 函数
java·开发语言·笔记·后端·junit·lua
曾经的三心草8 小时前
基于正倒排索引的Java文档搜索引擎1-实现索引模块-实现Parser类
java·开发语言·搜索引擎
CoolerWu8 小时前
TRAE SOLO实战成功展示&总结:一个所见即所得的笔记软体
前端·javascript
q***01658 小时前
Python爬虫完整代码拿走不谢
开发语言·爬虫·python
Cassie燁8 小时前
el-button源码解读1——为什么组件最外层套的是Vue内置组件Component
前端·vue.js
vx_bscxy3228 小时前
告别毕设焦虑!Python 爬虫 + Java 系统 + 数据大屏,含详细开发文档 基于web的图书管理系统74010 (上万套实战教程,赠送源码)
java·前端·课程设计