Модель Mon goose не может вызвать свои функции - PullRequest
0 голосов
/ 12 апреля 2020

Я не могу заставить Mon goose использовать его функции

var boxSchema = new mongoose.Schema({
    identify: String,
    name: String,
    phone: String,
});

var Box = mongoose.model("Box", boxSchema);
Box.create({
    identify: "Foo",
    name: "",
    phone: "",
},(err,box)=>{
    if(err){
        console.log(err);
    }
    else{
        console.log(`box created! ${box}`);
    }
})

Это кажется немного глупым. Похоже, что все на месте, но метод create даже не сработает. Все импортировано наверх

const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const mongoose = require('mongoose');
const multer = require('multer');
const GridFsStorage = require('multer-gridfs-storage');
const Grid = require('gridfs-stream');
const methodOverride = require('method-override');

Мое соединение с БД выполнено следующим образом:

const mongoURI = 'mongodb://localhost:27017/depo';
const conn = mongoose.createConnection(mongoURI, {
    useNewUrlParser: true,
    useUnifiedTopology: true
});

У меня также есть хранилище gridfs и реализация мультитера, но, похоже, это не мешает с приложением. Есть идеи, почему это может не сработать? : /

Ответы [ 2 ]

0 голосов
/ 12 апреля 2020

Хорошо, я действительно нашел проблему. Существует этот объект conn, который я создаю для того, чтобы использовать GridFS, и его нельзя использовать как соединение mongodb. Поэтому я должен был добавить туда мон goose .connect.

mongoose.connect("mongodb://localhost/depo", {
    useNewUrlParser: true,
    useUnifiedTopology: true
});

0 голосов
/ 12 апреля 2020

Попробуйте это:

var boxSchema = new mongoose.Schema({
  identify: {
    type: String
  },
  name: {
    type: String
  },
  phone: {
    type: String
  }
});

var Box = mongoose.model("Box", boxSchema);

var BoxModel = new Box();

BoxModel.identify = "Foo";
BoxModel.name = "";
BoxModel.phone = "";
BoxModel.save();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...