我正在尝试使用在同一模式中定义的对象。
const officeSchema = new mongoose.Schema({
Employee_Info:{
Name:{
first: String,
middle: String,
last: String,
},
Phone_Info:{
number : Number,
type: String
},
},
Employer_Info:{
Name:{
//I am trying to use the Name object which I defined above
},
Phone_Info:{
//I am trying to use the Phone_Info object which I defined above
},
},
});
我希望对象约束可以在我在上面以名称和 Phone_Info
的名义定义的相同模式中的任何位置使用问题1:已解决
问题2:
如何将一个模型的模式用于另一个模型?
EMP.ts
import * as mongoose from 'mongoose';
import {Schema} from 'mongoose';
const employeeSchema = new Schema({
Name:{
first: String,
middle: String,
last: String,
},
Phone_Info:{
number : Number,
type: String
}
});
const employerSchema = new Schema({
employee : employeeSchema
});
const Employer = mongoose.model('employer', employerSchema);
export default employer;
const Employee = mongoose.model('employee', employeeSchema);
module.exports = employee;
EMP2.ts
import * as mongoose from 'mongoose';
import {Schema} from 'mongoose';
import Employee from './emp/models';
import
const employee2Schema = new mongoose.Schema({
employee1: Employee;
})
我想在employee1中使用employeeSchema
答案 0 :(得分:0)
我担心你将不得不使用2个模式,如下所示:
const employeeSchema = new Schema({
Name:{
first: String,
middle: String,
last: String,
},
Phone_Info:{
number : Number,
type: String
}
});
const employerSchema = new Schema({
employee : employeeSchema
});
然后您只能导出雇主架构。
const Employer = mongoose.model('employer', employerSchema);
module.exports = employer;
编辑1: 要在另一个模型中使用此模式,您只需使用
导出该模式const Employee = mongoose.model('employee', employeeSchema);
module.exports = employee;
然后使用 import 将其导入到其他模型中,您可以像在第一个中一样使用它
import employee from './model_doc_name'