如何从mongodb中检索数据并在ejs页面中显示?

时间:2016-12-26 13:08:15

标签: node.js mongodb express mongoose

我已将数据添加到mongodb。我正在使用猫鼬。我想从mongodb数据库获取数据并在ejs页面中显示。我在互联网上搜索了很多但是在尝试这些时我遇到了错误。我不明白错误是什么。这是我最近尝试过的。

  

Mongoose架构

 var mongoose = require("mongoose");

 var Schema = mongoose.Schema;

 var UserSchema = new Schema({

     username:String,
     _id:String,
     dateOfBirth:Date,
     telephoneNo:Number,
     address:String,
     email:String,
     fb_Id:String,
     jobTitle:String,
     password:String
 });

 module.exports=mongoose.model('User',UserSchema);
  

我从mongodb获取数据

router.get('/', function(req, res){
user.find({}, function(err, profile){
    res.render('AdminDatabase', { profile : profile});
   });
});
  

我在ejs页面中显示的位置

<div>
    <ul>
    <% for(var i=0; i<profile.length; i++) {%>
        <li><%= profile[i].username %></li>
        <li><%= profile[i]._id %></li>
        <li><%= profile[i].dateOfBirth %></li>
        <li><%= profile[i].telephoneNo %></li>
        <li><%= profile[i].address %></li>
        <li><%= profile[i].email %></li>
        <li><%= profile[i].fb_Id %></li>
        <li><%= profile[i].jobTitle %></li>
    <% } %>
    </ul>
</div>

但是当我刷新AdminDatabase页面时,我收到错误

ReferenceError:E:/ Software project / Project / myProject / views / AdminDatabase.ejs:67

未定义

个人资料

1 个答案:

答案 0 :(得分:-1)

“用户”不会变成“用户”,因此查找代码应类似于

users.find({} ...

..?