【问题标题】:What does mongoose.Schema return in mongoose?mongoose.Schema 在猫鼬中返回什么?
【发布时间】:2019-03-24 18:36:48
【问题描述】:
const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const modelSchema = new Schema({
    a: String,
    b: Date
});

我知道第一行返回的是一只猫鼬。但是 mongoose.Schema 在这段代码中究竟返回了什么?为什么要写第三行“const modelSchema = new Schema(...)”?

【问题讨论】:

  • 第二行的 Schema 是 Mongoose 中的“类”或对象,从中派生出任何新的 Schema 实例。您必须先导入 Schema 对象,然后为了使用它,您需要为每个需要架构的模型实例化一个新实例。

标签: javascript mongoose


【解决方案1】:

您不必这样做。

只是省时写的捷径mongoose.Schema...以上代码:

const mongoose = require('mongoose'); 

const Schema = mongoose.Schema;

const modelSchema = new Schema({
    a: String,
    b: Date
});

相当于:

const mongoose = require('mongoose');

const modelSchema = new mongoose.Schema({
    a: String,
    b: Date
});

因此,要回答您的问题,仅引用mongoose.Schema 的行只不过是shortcut,以节省您每次都写额外的mongoose. :)。

这经常被使用的主要原因是因为很多示例在一个文件/示例中定义了多个schema。因此,为了节省时间,并且每次只使用变量 Schema 引用它时都不会重复相同的属性路径。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-09
    • 2019-02-08
    • 1970-01-01
    • 1970-01-01
    • 2018-08-22
    相关资源
    最近更新 更多