Node.js nodejs和mongodb中的数据库排序问题

Node.js nodejs和mongodb中的数据库排序问题,node.js,mongodb,Node.js,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; va

我无法将数据库从最后一个排序到第一个。这就是我所拥有的:

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>

寄于
但是我犯了一个错误


谢谢您的帮助。

我不确定错误是什么,但看起来您的逻辑错误了

试试这个

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})
  })

}); 

这是我得到的错误:当我添加你的代码。“错误:无法在视图目录“/Web Apps/12/Blog/nodeblog/views”中查找视图“Error”。我正在使用ejs作为模板呈现。我提供的代码是否引发了该错误?第95行似乎发生了错误。很抱歉打扰您。在第95车道上,我只有“渲染错误”页面。这是我的app.js:不用担心。这就是您的错误中间件,它充当所有异常的捕获工具。在第94行,插入
console.log(err)
以查看错误是什么,或者将错误视图添加到视图文件夹中。这是发生在我提供的修订代码还是您的代码上?