2017-03-16 60 views
0

我在排序數據庫時從最後到第一次遇到問題。這是我有:在nodejs和mongodb中排序數據庫的問題

Index.js

var express = require('express'); 
var router = express.Router(); 
var mongo = require("mongodb"); 
var db = require("monk")("localhost/nodeblog"); 

router.get('/', function(req, res, next) { 
    var db = req.db; 
    var posts = db.get('posts'); 

    posts.find({},{}, function(err, posts){ 
    res.render("index", {posts: posts}) 
    }).sort({_id: -1}).exec(function(err, docs){ 
    if(err) throw err 
    console.log(docs) 
    }) 

}); 

Index.ejs

<% include ./layout/header %> 

<% posts.forEach(function(x) { %> 
    <h1 class="ui header"><a href="/post/show/<%= x._id %>"><%= x.title %></a> 
    <div class="sub header">Posted in <%= x.categories %> by <%=x.author%> on <%= moment(x.date).format("MM-DD-YYYY")%></div> 
</h1> 
<h4 clas="ui header"> 
<%= x.body %> 
</h4> 
<div class="ui teal button"><a href="/post/show/<%= x._id %>"> Read More </a></div> 

但我得到一個錯誤!

謝謝你的幫助。

回答

0

我不確定錯誤是什麼,但它看起來像你在錯誤的地方有一些邏輯。當我加入你的代碼https://i.imgur.com/ntQy0cO.png:

試試這個....

var express = require('express'); 
var router = express.Router(); 
var mongo = require("mongodb"); 
var db = require("monk")("localhost/nodeblog"); 

router.get('/', function(req, res, next) { 
    var db = req.db; 
    var posts = db.get('posts'); 

    posts.find({}).sort({_id: -1}).exec(function(err, docs){ 
    if(err) throw err 
    console.log(docs) 
    res.render("index", {posts: docs}) 
    }) 

}); 
+0

這是我的錯誤。 「錯誤:無法查找視圖‘錯誤’的觀點目錄‘/ Web應用程序/ 12 /博客/ nodeblog /視圖’」 我使用EJS作爲我的模板呈現。 – jomeco1

+0

我給出的代碼拋出了那個錯誤?看起來像95號線上發生的錯誤。 –

+0

抱歉打擾你。在第95道上,我擁有的是渲染錯誤頁面。這是我的app.js:http://pastebin.com/CAQRrE0Q – jomeco1