OverwriteModelError:编译后无法覆盖`IUser`模型

问题描述 投票:0回答:1

当我想使用 findOne 获取一些值时,它会显示错误。

我从 api 中的 url 获取用户名,以使用 zod 进行验证


const UserModel =
  (mongoose.models.User as mongoose.Model<IUser>) ||
  mongoose.model<IUser>("IUser", UserSchema);

export default UserModel;

如何解决我的问题?

node.js mongodb mongoose-schema
1个回答
0
投票

您提供的代码似乎是尝试使用 TypeScript 为 User 集合定义 Mongoose 模型。看来您正在尝试处理模型可能已经存在的情况,如果确实存在,您希望使用现有模型而不是重新定义它。

数据库中好像还没有创建模型。请在调用 API 之前验证。

您可以尝试使用以下片段。

import { Schema, model, connect } from 'mongoose';

// define your schema here for the user model
const userSchema = {}

//  Create a Model.
const UserModel = model<IUser>('User', userSchema);
© www.soinside.com 2019 - 2024. All rights reserved.