1
我試圖從我的server.js文件傳遞一個變量爲HTML,但該變量不會顯示在我的EJS文件中。我必須錯過一些東西,因爲它正在另一條路線上工作(使用另一個EJS文件),但我看不到我想要傳遞的表單或變量。如果我在表單之外放置任何東西,但是表單本身不會顯示出來,我可以從我的服務器調用console.log,它顯示我從我的模型中找到變量,並通過回調錯誤測試。我已經嘗試使用工作EJS代碼來代替表單,並且不會顯示。因爲我可以把任何東西放在窗體外面,所以它又到了正確的位置。Mongoose/Express/Nodejs嘗試從服務器到html傳遞變量
此外,我沒有收到錯誤,表單或變量根本沒有顯示在EJS文件中。如果我改變任何東西在我的<%%>標籤(如下圖所示):
<% for(var i=0;i<turtles.length;i++){ %>
它會導致沒有定義的錯誤說法(例如)龜(/例)。所以它知道它在那裏。
預先感謝您。
我server.js文件:
edit: function(req, res){
Turtle.findOne({_id: req.params.id}, function(err, turtle){
if(err){}
else{
console.log(turtle._id);
res.render("edit", {turtles:turtle})}
})
},
我edit.ejs:
<% for(var i=0;i<turtles.length;i++){ %>
<h3><%= turtles[i].name %></h3>
<form action='/turtles/<%= turtles[i]._id %>' method='post'>
<p>Name: <input type='text' name='name' value="<%= turtles[i].name %>"></p>
<p>Favorite color: <input type='text' name='favecolor' value="<%= turtles[i].favecolor %>"></p>
<p><input type='submit' value='Edit'></p>
</form>
<% } %>