1

这是猫鼬和快递代码:

app.get('/:user/:id', function (req, res){

   usermodel.findOne({ user: req.params.user }, function (err, user){

   var imagen = user.imagen.id(req.params.id);

   console.log(imagen);

    res.render('photo.ejs', {

         user: user,
         photo: imagen

    });
   });

});

这是 EJS 模板中的输出:

<img src="/users/<%= user._id %>/<%= user.avatar %>" class="img-circle" alt="">

我有一个 console.log,返回 imagen 对象。就一次。但我收到这个:

{ title: 'Slimes',
  name: 'slimes.png',
  author: 'Mrmangado',
  description: 'A collection of Slimes',
  index: 1,
  views: 7,
  fav: 0,
  path: '/users/5112b8da8a63aae76f000005/',
  _id: 5112b91a8a63aae76f000006,
  comments: [],
  date: Wed Feb 06 2013 23:12:10 GMT+0300 (MSK),
  tags: [ '#Slimes', '#DQ', '#Sprites' ] }
null
TypeError: /root/views/photo.ejs:92

  >> 1|       <img src="/users/<%= user._id %>/<%= photo.name %>" alt=""/>

我得到了两次 imagen 对象,第一次是定义的,但第二次的值为 null,所以我得到一个错误。为什么?为什么我收到两个请求,也许是对那个 URL 的请求,这真的很奇怪。对此有什么解决方案...?

谢谢提前!

4

1 回答 1

0

我认为请求 /user/id/usr/id/photoname 执行相同的代码。此外,错误转储中的错误行也不是您之前复制的行。

于 2013-02-07T13:24:34.193 回答