2013-04-05 65 views
2

我有一個獲取所有客戶端的路由,我試圖將客戶端傳遞給ejs來呈現它們。我收到以下錯誤:我如何獲得ejs與貓鼬一起工作?

Express 
500 SyntaxError: Unexpected token { 
at Object.Function (unknown source) 
at exports.compile (/Users/sm/Desktop/AttApp/node_modules/ejs/lib/ejs.js:234:12) 
at Object.exports.render (/Users/sm/Desktop/AttApp/node_modules/ejs/lib/ejs.js:273:10) 
at View.exports.renderFile [as engine] (/Users/sm/Desktop/AttApp/node_modules/ejs/lib/ejs.js:303:22) 
at View.render (/Users/sm/Desktop/AttApp/node_modules/express/lib/view.js:75:8) 
at Function.app.render (/Users/sm/Desktop/AttApp/node_modules/express/lib/application.js:503:10) 
at ServerResponse.res.render [as partial] (/Users/sm/Desktop/AttApp/node_modules/express/lib/response.js:721:7) 
at ServerResponse.module.exports.res.render (/Users/sm/Desktop/AttApp/node_modules/express-partials/index.js:55:9) 
at ServerResponse.res.renderPjax (/Users/sm/Desktop/AttApp/node_modules/express-pjax/pjax.js:17:11) 
at Promise. (/Users/sm/Desktop/AttApp/app.js:61:17) 

這裏是我的路線:

app.get('/clients', function(req, res) { 
    return ClientModel.find(function(err, clients) { 
     if(!err) { 
      res.renderPjax('clients/clients.ejs', { 
       title: 'Clients Page', 
       clients: clients 

      }); 

      console.log(clients); 
     } else { 
      return console.log(err); 
     } 
    }); 
}); 

這裏是我的看法client.ejs:

<input type="text" class="table-search" id="search" autocomplete="off" placeholder="Search Clients…"> 
<table class="table" id="tblData"> 
     <thead> 
     <tr> 
     <th>Client Name</th> 
     <th>Title</th> 
     </tr> 
     </thead> 
      <tbody id="tblDataBody"> 
      <% clients.forEach(fucntion(client){ %> 

       <tr> 
        <td><a href="http://lar4.loc/clients/<%= client._id %>"><%= client.first_name %></a></td> 
        <td>Title</td> 
       </tr> 

      <% }) %> 

      </tbody> 
</table> 

我怎樣才能獲得EJS模板循環客戶端數據並呈現它?我正在使用貓鼬來存儲和獲取數據。我也使用express.js。

回答

3

我認爲這是由於在這行

<% clients.forEach(fucntion(client){ %> 

到錯誤,因爲你拼錯function它不能解釋{