नहीं मिल सकता है मॉड्यूल '../मॉडल/* बनाने के लिए कोशिश कर बाकी एपीआई में Node.js और MongoDB

0

सवाल

शुरू बनाने के बाहर बाकी एपीआई के साथ Node.js और मोंगो DB तो वहाँ कुछ है जो मैं करना चाहते हैं पता करने के लिए. मैं इस त्रुटि हो रही है

Cannot find module '../models/book

के साथ और अधिक विस्तृत त्रुटि के रूप में नीचे दिखाया गया है :

PS D:\node_apps\mongo1> npm start

> [email protected] start D:\node_apps\mongo1
> node ./bin/www

internal/modules/cjs/loader.js:892        
  throw err;
  ^

    Error: Cannot find module '../models/book'
    Require stack:
    - D:\node_apps\mongo1\routes\users.js     
    - D:\node_apps\mongo1\app.js
    - D:\node_apps\mongo1\bin\www
        at Function.Module._resolveFilename (internal/modules/cjs/loader.js:889:15)
        at Function.Module._load (internal/modules/cjs/loader.js:745:27)
        at Module.require (internal/modules/cjs/loader.js:961:19)
        at require (internal/modules/cjs/helpers.js:92:18)
        at Object.<anonymous> (D:\node_apps\mongo1\routes\users.js:3:12)
        at Module._compile (internal/modules/cjs/loader.js:1072:14)
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:1101:10)
        at Module.load (internal/modules/cjs/loader.js:937:32)
        at Function.Module._load (internal/modules/cjs/loader.js:778:12)
        at Module.require (internal/modules/cjs/loader.js:961:19) {
      code: 'MODULE_NOT_FOUND',
      requireStack: [
        'D:\\node_apps\\mongo1\\routes\\users.js',
        'D:\\node_apps\\mongo1\\app.js',
        'D:\\node_apps\\mongo1\\bin\\www'
      ]
    PS D:\node_apps\mongo1> npm start
    
    > [email protected] start D:\node_apps\mongo1
    > node ./bin/www
    
    internal/modules/cjs/loader.js:892        
      throw err;
      ^
    
    Error: Cannot find module './routes/books'
    Require stack:
    - D:\node_apps\mongo1\app.js
    - D:\node_apps\mongo1\bin\www
        at Function.Module._resolveFilename (internal/modules/cjs/loader.js:889:15)
        at Function.Module._load (internal/modules/cjs/loader.js:745:27)
        at Module.require (internal/modules/cjs/loader.js:961:19)
        at require (internal/modules/cjs/helpers.js:92:18)
        at Object.<anonymous> (D:\node_apps\mongo1\app.js:9:15)
        at Module._compile (internal/modules/cjs/loader.js:1072:14)
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:1101:10)
        at Module.load (internal/modules/cjs/loader.js:937:32)
        at Function.Module._load (internal/modules/cjs/loader.js:778:12)
        at Module.require (internal/modules/cjs/loader.js:961:19) {
      code: 'MODULE_NOT_FOUND',
      requireStack: [
        'D:\\node_apps\\mongo1\\app.js',
        'D:\\node_apps\\mongo1\\bin\\www'
      ]
    }
    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! [email protected] start: `node ./bin/www`
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the [email protected] start script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     C:\Users\emi\AppData\Roaming\npm-cache\_logs\2021-11-23T17_18_24_504Z-debug.log
    PS D:\node_apps\mongo1>
    PS D:\node_apps\mongo1> 

अपने स्रोत कोड देख रहा है इस प्रकार है :

Database.js

var mongoose = require('mongoose');
mongoose.connect('mongodb+srv://admin:****@cluster0.cqryc.mongodb.net/test', {useNewUrlParser: true});

var conn = mongoose.connection;
conn.on('connected',function(){
    console.log('Connected');  
});

module.exports = conn;

userModel.js

var db = require('../database');
var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var BookSchema = new Schema({
    title : String,
    author : String,
    category : String,
});

module.exports = mongoose.model('Book',BookSchema);

users.js

var express = require('express');
var router = express.Router();
var Book = require('../models/book');


router.get('/', function(req, res) {
  Book.find({}).exec(function(err,books){
    if(err){
      res.send('error occured');
    }else{
      res.json(books);
    }
     });
});

router.get('/:id', function(req, res) {
  Book.findOne({
    _id : req.params.id
  }).exec(function(err,books){
    if(err){
      res.send('error occured');
    }else{
      res.json(books);
    }
     });
});


router.post('/',function(req,res){
  var newBook = new Book();
  newBook.title = req.body.title;
  newBook.author = req.body.author;
  newBook.category = req.body.category;
  newBook.save(function(err,book){
    if(err){
      res.send('error saving book');
    }else{
      res.send(book);
    }
  })
})

module.exports = router;

और App.js

var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');

var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
const books = require('./routes/books');

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');

app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));

app.use('/', indexRouter);
app.use('/users', usersRouter);
app.use('/books', books);

// catch 404 and forward to error handler
app.use(function(req, res, next) {
  next(createError(404));
});



// error handler
app.use(function(err, req, res, next) {
  // set locals, only providing error in development
  res.locals.message = err.message;
  res.locals.error = req.app.get('env') === 'development' ? err : {};

  // render the error page
  res.status(err.status || 500);
  res.render('error');
});


app.use((err, req, res, next) => {
  // console.log(err);
  err.statusCode = err.statusCode || 500;
  err.message = err.message || "Internal Server Error";
  res.status(err.statusCode).json({
    message: err.message,
  });
});

module.exports = app;

मैं क्या कर रहा हूँ गलत? कृपया मुझे मार्गदर्शन की जरूरत है । मैं कोशिश कर रहा हूँ प्राप्त करने के लिए यह काम करने के लिए, बस लापता बातें यहाँ.

mongodb node.js rest
2021-11-23 17:32:32
2

सबसे अच्छा जवाब

1

मैं यह काम करने के लिए. स्कीमा=> टेबल्स , मैं था संदर्भित बहुत ही गलत जानकारी है, लेकिन मैं सब कुछ काम करने के लिए अच्छा

तो, के बजाय var Book = require('../models/book'); मैं समाप्त होने के इस

var Book = require('../models/userModel');

और फिर मैं इस जोड़े यह भी app.use('/books', books);

और यह सभी समस्याओं का हल. सेटिंग Cors भी और सब कुछ ठीक है और सही ढंग से काम कर <3

सभी को धन्यवाद , धन्यवाद क्रेग!

2021-11-23 18:30:15
0

नीचे है, जहां आप कोशिश कर रहे हैं खोजने के लिए मॉड्यूल. आप कह रहे हैं कि यह में स्थित है निर्देशिका के बाहर एक आप कर रहे हैं का उपयोग करने के लिए आवेदन चलाने के साथ यहाँ ../

है कि आपका इरादा है?

var Book = require('../models/book');

किताब पसंद करता है की तरह है कि एक वर्ग बनाया गया है के भीतर अपने आवेदन, तो यह सही है आप की जरूरत है यह पता लगाने के लिए पदानुक्रम में और सही ढंग से संदर्भ । अगर यह एक ही स्थान में शुरू के रूप में .जे एस फ़ाइल है, तो यह होना चाहिए:

var Book = require('./models/book');

संपादित करें - मैं सिर्फ देखा है निर्यात.

userModel.js

var db = require('../database');
var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var BookSchema = new Schema({
    title : String,
    author : String,
    category : String,
});

module.exports = mongoose.model('Book',BookSchema);

नीचे यहाँ यह की तरह लग रहा है, आप निर्यात कर रहे हैं इस पुस्तक के रूप में. मैं नहीं कर रहा हूँ एक मास्टर यहाँ है, लेकिन जब भी मैं निर्यात एक कक्षा मैं संदर्भ का उपयोग कर इसे

वार पुस्तक = आवश्यकता होती है('userModel.js')

तो .जे एस फ़ाइल का नाम है ।

2021-11-23 17:49:18

मैं यह काम करने के लिए. मुझे पोस्ट का जवाब.
Revan

महान खुशी है कि मेरे सुझाव पर काम किया
Craig

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में