Mongoose Document Model.prototype.discriminators函数

Mongoose Document Model.prototype.discriminators函数

Mongoose API的Model.prototype.discriminators属性用于返回模型的已注册的鉴别器。

语法:

Model_Name.discriminators

返回值: Model.prototype.discriminators属性返回模型的注册判别器。

设置Node.js应用程序:

步骤1: 使用以下命令创建一个Node.js应用程序:

npm init

步骤2:

在创建NodeJS应用程序后,使用以下命令安装所需模块:

npm install mongoose

项目结构: 项目的结构如下所示:

Mongoose Document Model.prototype.discriminators函数

示例1: 在这个示例中,我们使用mongoose建立了一个数据库连接,并定义了一个模型,用户模式(userSchema)包含了两个字段或列“name”和“age”。最后,我们在User模型上使用了discriminators属性,它会返回模型的已注册的discriminators。

  • app.js: 将下面的代码写入app.js文件中:
// Require mongoose module 
const mongoose = require('mongoose'); 
  
// Set Up the Database connection 
mongoose.connect( 
    'mongodb://localhost:27017/geeksforgeeks', { 
    useNewUrlParser: true, 
    useUnifiedTopology: true
}) 
  
const userSchema = new mongoose.Schema( 
    { name: String, age: Number } 
) 
  
// Defining userSchema model 
const User = mongoose.model('User', userSchema); 
  
// Setting the discriminator 
const ClickedLinkEvent = User.discriminator('ClickedLink', 
  new mongoose.Schema({ url: String })); 
  
// Getting the discriminator 
const output = User.discriminators 
console.log("Discriminators is", output)

运行程序的步骤: 在项目的根目录下执行以下命令来运行应用:

node app.js

输出:

Discriminators is { ClickedLink: Model { ClickedLink } }

示例2: 在这个示例中,我们使用mongoose建立了一个数据库连接,并基于studentSchema定义了一个模型,其中包含三个列或字段:“name”、“father_name”和“mother_name”。最后,我们在Student模型上使用了base属性,它将返回模型的判别器。

  • app.js: 将以下代码写入app.js文件中:
// Require mongoose module 
const mongoose = require('mongoose'); 
  
// Set Up the Database connection 
mongoose.connect( 
'mongodb://localhost:27017/geeksforgeeks', { 
    useNewUrlParser: true, 
    useUnifiedTopology: true
}) 
  
const studentSchema = new mongoose.Schema({  
    name: String,  
    father_name: String,  
    mother_name: String  
}) 
  
// Defining studentSchema model 
const Student = mongoose.model('Student', studentSchema); 
  
// Setting the Discriminators 
const ParentEvent = Student.discriminator( 
    'Parent', 
      new mongoose.Schema({ parentName: String }) 
); 
    
// Getting the Discriminators 
const output = Student.discriminators 
console.log("Discriminators is:", output)

运行程序的步骤: 从项目的根目录执行以下命令来运行应用程序:

node app.js

输出:

Discriminators is: { Parent: Model { Parent } }

参考: https://mongoosejs.com/docs/api/model.html#model_Model-discriminators

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程