mongoose 的“有独立工作收入的员工”模式设计的问题
Posted
技术标签:
【中文标题】mongoose 的“有独立工作收入的员工”模式设计的问题【英文标题】:Problem with “Employee with independent job income” schema design with mongoose 【发布时间】:2020-08-15 14:59:17 【问题描述】:学习 mongoDb。寻找正确的架构解决方案: 有员工,每个员工都有自己的工作类型,每种工作都有自己的收入。正确的模式将如何寻找这一点,这样就可以为员工添加具有自己收入数据的新工作类型,并在未来对所有收入数据进行所有必要的数学运算?
Const mongoose = require(‘mongoose’)
Const Schema = mongoose.Schema
Const employeeSchema = new schema(
employeeName: type: string,
job: [
jobName:type: string,
jobIncome:type: number
date: type: Date, default : Date.now
]
)
该架构看起来正确吗?
【问题讨论】:
【参考方案1】:Const mongoose = require(‘mongoose’)
Const Schema = mongoose.Schema
Const employeeSchema = new schema(
employeeName: type: string,
job: [
reference: type: Schema.Types.ObjectId,
ref: "Job",
required: true,
joiningDate: type: Date, default : Date.now,
lastDate: type: Date
]
)
工作模式的定义 - 你也可以有其他字段
Const jobSchema = new schema(
title: type:string,
income:type:number
)
module.exports = Job = mongoose.model("Job", jobSchema);
【讨论】:
以上是关于mongoose 的“有独立工作收入的员工”模式设计的问题的主要内容,如果未能解决你的问题,请参考以下文章
ObjectId 的 NodeJS/Mongoose 模式数组