module.js: 549 throw err; - PullRequest
       5

module.js: 549 throw err;

0 голосов
/ 28 августа 2018
> module.js:549
>     throw err;
>     ^
> 
> Error: Cannot find module '..models/category'
>     at Function.Module._resolveFilename (module.js:547:15)
>     at Function.Module._load (module.js:474:25)
>     at Module.require (module.js:596:17)
>     at require (internal/module.js:11:18)
>     at Object.<anonymous> (/home/mridul/shafee-it/routes/admin.js:2:18)
>     at Module._compile (module.js:652:30)
>     at Object.Module._extensions..js (module.js:663:10)
>     at Module.load (module.js:565:32)
>     at tryModuleLoad (module.js:505:12)
>     at Function.Module._load (module.js:497:3)
>     at Module.require (module.js:596:17)
>     at require (internal/module.js:11:18)
>     at Object.<anonymous> (/home/mridul/shafee-it/server.js:74:21)
>     at Module._compile (module.js:652:30)
>     at Object.Module._extensions..js (module.js:663:10)
>     at Module.load (module.js:565:32) [nodemon] app crashed - waiting for file changes before starting...

Вот мои ..модели / категория (схема категории)

const mongoose = require('mongoose');
const Schema = mongoose.Schema;


const CategorySchema = new Schema({
    name: { type: String, unique: true, uppercase: true}
});


module.exports = mongoose.model('Category', CategorySchema);

Маршрут add-категории в файле admin.js

const router = require('express').Router();
const Category = require('..models/category');

// add-category route
router.get('/add-category', function(req, res, next) {
    res.render('admin/add-category', { message: req.flash('success') });
});


router.post('/add-category', function(req, res, next) {
    var category = new Category();
    category.name = req.body.name;

    category.save(function(err) {
        if (err) return next(err);
        req.flash('success', 'Successfully added a category');
        return res.redirect('/add-category');
    });
}); 

Здесь также файл server.js для включения категории

const Category = require('./models/category');

app.use(function(req, res, next) {
    Category.find({}, function(err, categories) {
        if (err) return next(err);
        res.locals.categories = categories;
        next();
    });
});

const adminRoutes = require('./routes/admin');

app.use(adminRoutes);
  • когда я запускаю свой сервер или маршрутизирую URL-адрес add-category, тогда show module.js: 549 throw err; эта проблема.
    Вот мои детали проблемы, и я проверяю свой код разное.
    Тогда как я могу решить эту проблему.

1 Ответ

0 голосов
/ 28 августа 2018

Мне кажется, что вы забыли /:

require('..models/category');

require('../models/category');

Вот почему ..models/category выдает ошибку. С общей точки зрения, когда require не может найти локальный модуль, не «проверяйте код», просто проверяйте, где находится файл и по какому пути вы написали, он всегда один или другой. ;)

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