【问题标题】:Getting a typeerror: cannot read property find of undefined获取类型错误:无法读取未定义的属性查找
【发布时间】:2020-02-15 00:17:13
【问题描述】:

我从另一个应用程序中复制了代码,并且运行良好。但是这个给了我一个 Typeerror: cannot read property find of undefined 当我使用 api 向数据库发出请求时。 这是我的 server.js

const express = require("express");
const app = express();
const bodyParser = require("body-parser");
const cors = require("cors");
const mongoose = require("mongoose");
const userRoutes = express.Router();
const PORT = 4000;

let { User } = require("./models/User");

app.use(cors());
app.use(bodyParser.json());

mongoose.connect("mongodb://127.0.0.1:27017/school", { useNewUrlParser: true });
const connection = mongoose.connection;

connection.once("open", function() {
  console.log("MongoDB database connection established successfully");
});

userRoutes.route("/").get(function(req, res) {
  User.find(function(err, users) {
    if (err) {
      console.log(err);
    } else {
      res.json(users);
    }
  });
});
app.use("/users", userRoutes);
app.listen(PORT, function() {
  console.log("Server is running on Port: " + PORT);
});

这是我的用户模型:

const mongoose = require("mongoose");
const Schema = mongoose.Schema;

let User = new Schema({
  firstName: {
    type: String,
    required: "First name is required"
  },
  lastName: {
    type: String,
    required: "Last name is required"
  },
  emailAddress: {
    type: String,
    required: "Email address is required",
    match: [
      /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
      "A valid email address is required"
    ]
  },
  password: {
    type: String,
    required: "Password is required"
  }
});

module.exports = mongoose.model("User", User);

【问题讨论】:

    标签: node.js mongodb mongoose


    【解决方案1】:

    您的问题是导入用户架构的方式错误,您可以这样修复它:

    let User = require("./models/User");
    
    

    现在你的函数可以正常工作了 :)

    【讨论】:

      猜你喜欢
      • 2020-03-28
      • 2021-10-08
      • 2021-12-22
      • 1970-01-01
      • 1970-01-01
      • 2021-12-25
      • 2019-02-26
      • 2018-04-29
      相关资源
      最近更新 更多