簡體   English   中英

Mongoose.find是不是function?

[英]Mongoose .find is not a function?

我正在使用 mongoose 版本 ^5.10.2,我已經能夠將數據保存到 mongo Atlas 數據庫,但我無法獲取數據。 當我嘗試使用時:

const mongoose = require('mongoose');
const express = require('express');

{
    const config = require("./config.json")
    var token = config.token;
    var prefix = config.prefix;
    var botName = config.botName;
}

const server = require('./server.js');
server();



var Schema = mongoose.Schema;

var SomeModelSchema = new Schema({
    modName: String,
    modUrl: String
});

// Compile model from schema
var SomeModel = mongoose.model('SomeModel', SomeModelSchema);

setInterval(function () {
    // Create an instance of model SomeModel
    var awesome_instance = new SomeModel({ 'ModName': 'Kiddions mod menu', 'modUrl': 'https://www.unknowncheats.me/forum/downloads.php?do=file&id=27946' });
    console.log('---Direct info---');

    console.log('Name: ' + awesome_instance.ModName);
    console.log('URL: ' + awesome_instance.modUrl);

    // Save the new model instance, passing a callback
    awesome_instance.save(function (err) {
        if (err) return handleError(err);
        // saved!
    });

    awesome_instance.find({}, function(err, data){
        console.log(">>>> " + data );
    });

}, 2000);

服務器.js 代碼:

const express = require('express');
const connectDB = require('./DB/Conncection');
const app = express();

module.exports = function server() {

    connectDB();
    app.use(express.json({ extended: false }));
    app.use('/api/userModel', require('./Api/Mod'));
    const Port = process.env.Port || 3030;

    app.listen(Port, () => {
        console.log('Server started')
    });

}

連接.js 代碼:

const mongoose = require('mongoose');

const URI =My database";

const connectDB = async () => {
  await mongoose.connect(URI, {
    useUnifiedTopology: true,
    useNewUrlParser: true
  });
  console.log('DB connected..!');
};

module.exports = connectDB;

它失敗了......我得到了錯誤:

Server started
DB connected..!
---Direct info---
Name: undefined
URL: https://www.unknowncheats.me/forum/downloads.php?do=file&id=27946
C:\Users\zssho\Desktop\Fiverr Gigs\the_mcs - GTA modding\Discord bot\src\bot.js:45
   **awesome_instance.find({}, function(err, data){
                    ^
TypeError: awesome_instance.find is not a function
   at Timeout._onTimeout (C:\Users\zssho\Desktop\Fiverr Gigs\the_mcs - GTA modding\Discord bot\src\bot.js:45:22)
   at listOnTimeout (internal/timers.js:549:17)
   at processTimers (internal/timers.js:492:7)

我已經將它用作 function 一段時間了,但最近它停止工作了。 難道是因為我更新了mongoose?

awesome_instance是文檔.find是集合/模型中存在的方法,所以請嘗試

SomeModel.find({}, function(err, data){
        console.log(">>>> " + data );
    });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM