使用 mongoose 和 nodejs 自动生成员工 ID
Auto-generate employee ID using mongoose and nodejs
我正在使用 MEAN 堆栈技术开发 Web 应用程序项目。我想在收到添加新员工的请求时自动生成 'empId'(员工 ID)。我怎样才能做同样的事情并将生成的 'empId' 存储在 保存员工详细信息的同一文档中 ?
提前致谢!
除非有其他未说明的要求,您可以在处理添加新员工的请求时简单地生成 empId
,并将其包含在调用者可能提供的其他属性中:
const schema = new Schema({ name: String, empId: String });
const Employee = model('Employee', schema);
// then when handling an "add employee" request:
const { name } = req.body; // properties from request
const empId = generateEmployeeId(); // e.g., "uuid()"
const employee = new Model({name, empId})
您还可以在每个新的 Document by supplying it as a default in the mongoose Schema. Combine that with a library like nanoid 中自动包含一个 empId
(这使您可以更好地控制生成的 ID),并且您会得到如下内容:
const schema = new Schema({
name: String,
empId: {
type: String,
default: () => nanoid()
}
})
另请记住,mongodb 将始终为每个文档创建一个唯一标识符 in the _id property。
我正在使用 MEAN 堆栈技术开发 Web 应用程序项目。我想在收到添加新员工的请求时自动生成 'empId'(员工 ID)。我怎样才能做同样的事情并将生成的 'empId' 存储在 保存员工详细信息的同一文档中 ?
提前致谢!
除非有其他未说明的要求,您可以在处理添加新员工的请求时简单地生成 empId
,并将其包含在调用者可能提供的其他属性中:
const schema = new Schema({ name: String, empId: String });
const Employee = model('Employee', schema);
// then when handling an "add employee" request:
const { name } = req.body; // properties from request
const empId = generateEmployeeId(); // e.g., "uuid()"
const employee = new Model({name, empId})
您还可以在每个新的 Document by supplying it as a default in the mongoose Schema. Combine that with a library like nanoid 中自动包含一个 empId
(这使您可以更好地控制生成的 ID),并且您会得到如下内容:
const schema = new Schema({
name: String,
empId: {
type: String,
default: () => nanoid()
}
})
另请记住,mongodb 将始终为每个文档创建一个唯一标识符 in the _id property。