![](/img/trans.png)
[英]Having trouble inserting documents in mongoDB using mongoose and node.js
[英]Having trouble adding mongodb documents into an array in controller
如標題所示,我正在嘗試將mongodb中的文檔添加到控制器中的數組中。 以下代碼是我的控制器的外觀:
var express = require('express');
var router = express.Router();
var moviesModel = require("../models/movies");
/* GET /movies/ listing. */
router.get('/', function(req, res, next) {
moviesModel.find({}).where('Price').gt(10000).exec(function(err,movies){
if(err) throw err;
console.log(movies);
});
});
module.exports = router;
控制台上方的代碼記錄了5個文檔。 這些是我要添加到數組的文檔。 我的目標是將文檔插入數組,然后遍歷每個元素並通過視圖顯示它。 我不知道這是否可行。 如果您有關於如何處理此問題的建議,請告訴我。 任何幫助,將不勝感激。 謝謝!
首先,您必須通過res.render
方法的第二個參數將movies
傳遞給視圖:
var express = require('express');
var router = express.Router();
var moviesModel = require("../models/movies");
/* GET /movies/ listing. */
router.get('/', function(req, res, next) {
moviesModel.find({}).where('Price').gt(10000).exec(function(err,movies){
if(err) throw err;
console.log(movies);
res.render('layout.ejs', {movies: movies});
});
});
module.exports = router;
第二步是循環瀏覽視圖中的movies
,並以所需的格式輸出,如下所示:
layout.ejs
<!DOCTYPE html>
<html lang="en">
<head>
<title>My movies</title>
</head>
<body>
<ul>
<% for(var i=0; i<movies.length; i++) {%>
<li><%= movies[i] %></li>
<% } %>
</ul>
</body>
</html>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.