Не могу сохранить документ на mongodb с помощью mongoose - PullRequest
0 голосов

У меня есть моя схема как это

var Schema = mongoose.Schema;

var schema = new Schema({
    uid : {type: String, required: true},
    title: {type: String, required: true},
    description: {type: String, required: true}
})

module.exports = mongoose.model('Task', schema)

В другом файле я включаю этот файл и пытаюсь заполнить базу данных:

var Task = require('../models/task');
var uuid4 = require('uuid4')
var mongoose = require('mongoose')
mongoose.Promise = global.Promise;

mongoose.connect('mongodb://localhost:27017/app', {useNewUrlParser: true});
var task = new Task({
    uid: uuid4(),
    title: 'task3 name',
    description: 'task3 desc'
})
task.save(function (err) {
     if (err) console.log(err)
  })
}

Независимо от того, что я делаю, он не сохранит данные, которые я хочу. Теперь, когда я погружаюсь в базу данных, базу данных приложения, коллекцию задач, там нет вставок

версия: "мангуст": "^ 5.5.2",

1 Ответ

0 голосов
/ 18 апреля 2019

Согласно этой документации

Если вы создаете пользовательское соединение, используйте вместо этого функцию model () этого соединения.

var connection = mongoose.createConnection('mongodb://localhost:27017/test');
var Tank = connection.model('Tank', yourSchema);

Таким образом, вам нужно объявить вашу модель из вашего соединения, чтобы она знала, какое соединение связано с действием .save().

Я бы порекомендовал создать выделенный файл db.js, который обрабатывает создание соединения, которое затем можно импортировать.в каждый из ваших файлов схемы, чтобы создать модель из предоставленного соединения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...