猫鼬不会保存模型

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

我正在使用猫鼬来定义我的模型并将其保存到我的MONGODB集群中。

一切看起来不错,但是当我将请求发布到我的路线以保存user model时,发布请求加载过程将无法完成:(

这是主文件:

const express = require("express");
const app = express();

const bodyParser = require("body-parser");
app.use(bodyParser.json());

// DATABASE CONNECTION
const mongoose = require("mongoose");

mongoose.connect(
  connectionString,
  {
    useNewUrlParser: true
  },
  () => {
    console.log("database connected!");
  }
);

// ROUTES
const userRoute = require("./routes/user");
app.use("/", userRoute);

const port = 4040;
app.listen(port, err => {
  if (err) console.log(`Listening faild`);
  console.log(`Listening on PORT ${port}`);
});

这是我的路线/user.js:

const router = require("express").Router();

const User = require("../models/user");

router.post("/reg", (req, res) => {
  const user = new User({
    phone: req.body.phone,
    pin: req.body.pin,
    fullName: req.body.FullName
  });

  user
    .save()
    .then(data => {
      res.json(data);
      console.log(data);
    })
    .catch(err => {
      res.json({
        message: err
      });
      console.log(err);
    });
});

module.exports = router;

这是用户模型的对象:

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

const userSchema = Schema({
  phone: Number,
  pin: Number,
  fullName: String
});

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

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

您尚未定义connectionString。它应该看起来像这样-mongodb://username:password@host:port/database?options...或在localhost-mongodb://localhost:27017/database

© www.soinside.com 2019 - 2024. All rights reserved.