Как сохранить данные в базу данных mongodb по объекту JSON? - PullRequest
0 голосов
/ 04 октября 2019

Я хочу сохранить данные в базу данных. Я использовал, чтобы проверить свой URL с помощью базы данных. Но я не мог. Это сообщение показывает:

DeprecationWarning: текущий анализатор строки URL устарел и будет удален в следующей версии. Чтобы использовать новый синтаксический анализатор, передайте опцию {useNewUrlParser: true} в MongoClient.connect. список на порт 3000 {_id: 5d9775340007cc3c8cb34caf} {_id: 5d9775340007cc3c8cb34caf, __v: 0} Ошибка [ERR_HTTP_HEADERS_SENT]: невозможно установить заголовки после их отправки клиенту

1006 ** 1007код:

router.post("/timeTableRegistration", function(req, res) {
  const newTimeTable = new classTimeTable({
    object: req.body
  });
  console.log(newTimeTable);
  newTimeTable
    .save()
    .then(result => {
      console.log(result);
      res.json({ state: true, msg: "Data Inserted Successfully..!" });
    })
    .catch(error => {
      console.log(error);
      res.json({ state: false, msg: "Data Inserting Unsuccessfull..!" });
    });
  res.send("Success");
});

Это файл моей модели:

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

const classTimeTableSchema = mongoose.Schema({
  className: { type: String, require: true },

  monday: {
    1: { type: String, require: true },
    2: { type: String, require: true }
  },
  tuesday: {
    1: { type: String, require: true },
    3: { type: String, require: true }
  }
});

const classTimeTable = (module.exports = mongoose.model(
  "classTimeTable",
  classTimeTableSchema
));

1 Ответ

1 голос
/ 05 октября 2019

Вам просто нужно добавить параметр useNewUrlParser: true, где вы подключаетесь к своему mongodb. Это также ясно указывает на это в предоставленной ошибке. Уведомление о том, что заголовки уже отправлены, заключается в том, что вы уже использовали выходные данные ранее, так что, вероятно, это просто потому, что вы неправильно перехватываете свои ошибки.

Так что найдите ваше соединение с БД, вероятно, где-то в файле конфигурации или в приложенииsetup / bootstrap и просто добавьте эту опцию useNewUrlParser: true

...