从mongo数据库中显示单个文档?

时间:2015-08-11 23:48:28

标签: mongodb ejs

我使用ejs显示信息,但我只显示一个文档。我想显示一个文档,直到用户点击下一个按钮。

查看:

<div>
    <h1>This is the movie page</h1>

    <ul>

        <% for(var i =0;  i < movies.length; i ++) {%>
        <li>
            <span style="font-weight: bold">Title:</span> <%= movies[i].DVD_Title %>
        </li>
        <li>
            <span style="font-weight: bold">Studio:</span> <%= movies[i].Studio %>
        </li>
        <li>
            <span style="font-weight: bold">Genre:</span> <%= movies[i].Genre %>
        </li>
        <li>
            <span style="font-weight: bold">Year:</span> <%= movies[i].Year %>
        </li>

        <br>
        <% } %>
        <button type="button" id="prev">Prev </button>
        <button type="button" id="next">Next</button>

    </ul>
</div>

控制器:

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;
    res.render('movies', {movies:movies});
    });

});

module.exports = router;

找到here我的回购链接。

谢谢!

1 个答案:

答案 0 :(得分:0)

由于mongodb查询数据作为json对象返回到视图,我无法递增它。我必须把它推到自己的数组并增加它。

这是我的新观点:

<div>
    <h1>This is the movie page</h1>

    <ul>

        <% var movieArray = new Array();
        for(var i =0;  i < movies.length; i ++) {
                movieArray.push(movies[i]);
        } 

        var x = 0;
        %>
        <li>
            <span style="font-weight: bold">Title:</span> <%= movieArray[x].DVD_Title %>
        </li>
        <li>
            <span style="font-weight: bold">Studio:</span> <%= movieArray[x].Studio %>
        </li>
        <li>
            <span style="font-weight: bold">Genre:</span> <%= movieArray[x].Genre %>
        </li>
        <li>
            <span style="font-weight: bold">Year:</span> <%= movieArray[x].Year %>
        </li>

        <br>

        <h1><%= movieArray.length %></h1>

        <button type="button" id="prev" onClick="prev_movie">Prev </button>
        <button type="button" id="next" onClick="next_movie">Next</button>

    </ul>
</div>

按下Prev或Next后,x值将减小或增加,除非用户达到-1或array.length。