用戶擁有貓鼬中的字段,如果用戶決定更新,它將得到更新。如何更新在ejs + mongoose中有多個值的表單?
這裏的用戶模式
var User = Schema({
education: [{ type: String}],
});
所以基本上一個用戶,他們可以更新或添加,例如用戶可以添加額外的教育和使用形式的技能信息字段。
如何在ejs和路線中正確做到這一點?
我試圖在route.js
router.post('/update-resume', function(req, res) {
User.findById(req.user._id, function(err, foundUser) {
// This part how do I update ?
if (req.body.education) foundUser.resume.education.push(req.body.education);
foundUser.save();
});
});
價值不斷推進,我想,我知道這是很明顯,我推數據到外地,但我怎麼更新正常嗎?
Form.ejs
<div class="form-group">
<label for="education">Education:</label>
<% for(var i = 0; i < user.resume.education.length; i++) { %>
<input type="text" class="form-control" name="education" id="education" value="<%= user.resume.education[i] %>">
<% } %>
</div>
這是真的,我需要爲每個循環領域?如果我想更新具體數據?
我試過了,特別是在JSON.parse中出現了很多錯誤 - >不斷收到意外的令牌。你確定它是req.body.data?因爲html是data-id。 –
傑克,我已經添加了客戶端JavaScript的簡要說明,以解釋它做了什麼。如果你在頁面下方的頁面上有它,它將完成所有艱苦的工作並對它創建的數組進行字符串化。應該沒有解析錯誤,因爲它只是一個字符串化的對象(由JSON完成,所以它應該是有效的)。你能粘貼錯誤嗎? – Rick