Загруженное изображение Multer - PullRequest
1 голос
/ 06 мая 2020

Я использую Multer для загрузки изображений. Я могу загрузить их в свою базу данных с расширением. Все выглядит идеально, но я не вижу их на своей странице.

Также обратите внимание, что моему проекту необходимо указать c изображения для каждой статьи, что означает изменение изображений в каждой статье.

Это моя статья. js соответствующие коды:

const storage = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, 'public/uploads')
  },
  filename: function (req, file, cb) {
    cb(null, file.originalname)
  }
})
const upload = multer({storage: storage})


// Add Submit POST Route
router.post('/add',upload.single('img'),  function(req, res){

  req.checkBody('title','Title is required').notEmpty();
  //req.checkBody('author','Author is required').notEmpty();
  req.checkBody('body','Body is required').notEmpty();

  // Get Errors
  let errors = req.validationErrors();

  if(errors){
    res.render('add_article', {
      title:'Add Article',
      errors:errors
    });
  } else {
var article = new Article({
    title: req.body.title,
    author: req.user._id,
    img:  `uploads/${req.file.filename}`,
    body: req.body.body,
   });

    article.save(function(err){
      if(err){
        console.log(err);
        return;
      } else {
        res.render('add_article', {
        });
      }
    });
  }
});

И:

// Get Single Article
router.get('/:id', function(req, res){

  Article.findById(req.params.id, function(err, article){
    //User.findById(article.author, function(err, user){
      res.render('article', {
        article:article,
        //imagePath: article.img,
        //author: user.name
      });
    });
  });

Это моя статья. Мопс: расширяет макет

block content
  br
  //h5 Written by #{author}
  h1= article.title
  p= article.body
  img.img-responsive(src=article.img)

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

Это мой console.log (article.img): uploads/image.jpeg

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

...