Javascript 在Model.js、NodeJs中创建对象
在我的model.js(使用mongoose)中,我最初在model.js中创建了40个对象,这些对象将在整个程序中使用。任何文件中的其他函数都不会创建更多对象,而只会更新现有对象 My model.jsJavascript 在Model.js、NodeJs中创建对象,javascript,node.js,express,object,mongoose,Javascript,Node.js,Express,Object,Mongoose,在我的model.js(使用mongoose)中,我最初在model.js中创建了40个对象,这些对象将在整个程序中使用。任何文件中的其他函数都不会创建更多对象,而只会更新现有对象 My model.js var TicketSchema = mongoose.model('Tickets', TicketSchema); for(let i = 1;i<=40;i++) { var new_ticket = new TicketSchema({ticket_number:i}
var TicketSchema = mongoose.model('Tickets', TicketSchema);
for(let i = 1;i<=40;i++)
{
var new_ticket = new TicketSchema({ticket_number:i});
new_ticket.save(function(err, ticket) {
});
}
var TicketSchema=mongoose.model('Tickets',TicketSchema);
对于(设i=1;i每次启动服务器时,它将创建新的40个文档。您可以使用此功能通过检查计数避免创建记录是否已存在
const TicketModel = mongoose.model('Tickets', TicketSchema);
const insertTicketNumber = async () => {
try {
const count = await TicketModel.countDocuments({});
if (count) return;
await TicketModel.create(
[...Array(40).keys()]
.map(i => i + 1)
.map(number => ({ ticket_number: number }))
);
} catch (error) {
console.log(error.message);
}
};
有没有从数据库中删除这些票证?在创建更多票证之前,您是否检查它们是否在那里?或者每次启动时您是否只创建另外40个票证?没有,任何函数中都不会删除票证。我需要在整个执行过程中只使用40个初始创建的对象。那么,随着时间的推移,会有更多票证吗?听起来像是您需要更多的迁移模式,需要一次性初始化。或者只需先检查并在需要时创建。不,我想知道这是因为服务器关闭并再次运行吗?当我托管代码时,会不会再次发生?是的,每次服务器启动时,都会导入该文件并创建40个新票证。此功能不适用于t添加项目时,我得到一个空列表。您是否调用了该函数?