首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建允许我发布的构造函数类型?

如何创建允许我发布的构造函数类型?
EN

Stack Overflow用户
提问于 2022-05-17 06:37:31
回答 1查看 25关注 0票数 0

因此,我一直试图为我的滑翔伞社区创建一个后端项目,我正在测试邮递员的功能,而我的朋友正在处理前端问题。

我已经创建了很多模型,在处理其他模型之前,我试图检查用户模型,但我就是做不到。当我通过邮递员发帖时,它会说TypeError: user不是构造函数

routes.js

代码语言:javascript
复制
const express = require("express");
const {userModel} = require("../schemas/db-schema");
const {EventModel} = require("../schemas/db-schema");
const {PaymentModel} = require("../schemas/db-schema");
const {RulesModel} = require("../schemas/db-schema");
const {InvitationModel} = require("../schemas/db-schema");
const app = express();

app.post("/add_user", async (request, response) => {
    const user = new userModel(request.body);
    try {
      await user.save();
      response.send(user);
    } catch (error) {
      response.status(500).send(error);
    }
});

app.get("/users", async (request, response) => {
    const users = await userModel.find({});
  
    try {
      response.send(users);
    } catch (error) {
      response.status(500).send(error);
    }
  });

module.exports = app;

db-schema.js

代码语言:javascript
复制
const mongoose = require("mongoose");

const UserSchema = new mongoose.Schema({
        Name: {type:String, required: true},
        Surname:{type:String, required: true},
        Email: {type:String, required: true},
        Birth: {type:Date,required: false},
        AbsenceCount: {type:Number, required:true},
        Height: {type:Number, required:true},
        Weight: {type:Number, required:true},
        FlightCount:{type:Number, required:true},
        BloodType: {type:String, required: true},
        Sex: {type:String, required: true},
        PhoneNum: {type:String, required: true},
        Siv: {type:Boolean, required: true},
        Type: {type:String, required: true},
        Password: {type:String, required: true},
        Illness: [{type:String, required: true}],
        Drugs: [{type:String, required: true}],
        Adresses: [{type:String, required: true}],
        EmergencyName: [{type:String, required: true}],
        emergencyPhoneNum: [{type:String, required: true}]
    }
);

const UserModel = mongoose.model("UserModel", UserSchema);
const eventSchema = new mongoose.Schema({
        Name: {type:String, required: true},
        Location: {type:String, required: true},
        Date: {type:Date, required: true},
        Deadline: {type:Date, required: true},
        MaximumParticipant: {type:Number, required: true},
        Participants:[{type:String, required: true}]
});
const EventModel = mongoose.model("EventModel", eventSchema);
const paymentSchema = new mongoose.Schema({
        Name: {type:String, required: true},
        DeadLine: {type:Date, required: true},
        PaymentCategory:{type:String, required: true},
        PaymentAmount: {type:Number, required: true},
        PeopleInDebt:[{type:String, required: true}]   
});
const PaymentModel = mongoose.model("PaymentModel", paymentSchema);
const ruleSchema = new mongoose.Schema({
        EventStartDate: {type:Date, required: true},
        EventFinishDate:{type:Date, required: true},
        EventStartHour:{type:String, required: true},
        EventFinishHour: {type:String, required: true},
        BeginnerPilotEventRegister: {type:Boolean, required: true},
        ActivePilotEventRegister: {type:Boolean, required: true},
        CanRegisterEvents: {type:Boolean, required: true},
        NewMemberRegister: {type:Boolean, required: true}   
});
const RulesModel = mongoose.model("RulesModel", ruleSchema);
const invitationSchema = new mongoose.Schema({
        Name:{type:String, required: true},
        SpecialCode: {type:String, required: true},
        Deadline:{type:Date, required: true},
        Type: {type:String, required: true},
        UsageAmount:{type:Number, required: true}
});
const InvitationModel = mongoose.model("InvitationModel", invitationSchema);

module.exports = {
    InvitationModel,RulesModel,PaymentModel,EventModel,UserModel
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-17 10:03:03

您正在导出UserModel并尝试获取userModel。在路由中将u更改为大写,或在db-schema中更改为小写,它将工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72269187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档