2013-02-06 34 views
1

這是貓鼬和快速的代碼:與貓鼬奇怪行爲,表達和EJS

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="https://stackoverflow.com/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="https://stackoverflow.com/users/<%= user._id %>/<%= photo.name %>" alt=""/> 

我得到的imagen畫質對象兩次,第一次被定義,但第二次具有null值,所以我得到一個錯誤。爲什麼?爲什麼我得到兩個請求,可能是那個URL,這真的很奇怪。 任何解決方案...?

謝謝先進!

回答

0

我認爲這兩個請求 /user/id/usr/id/photoname執行相同的代碼。此外,錯誤轉儲中的行錯誤不是您之前複製的錯誤。