【发布时间】:2020-06-26 18:21:34
【问题描述】:
我是编程新手。我有一个名为“RestInput”的猫鼬模型。我正在尝试弄清楚如何使用猫鼬在 .ejs 文件中呈现和显示信息。
在 app.js 中
router.get('/find',(req,res) => {
RestInput.find({}, function(err,data) {
if(err){
console.log(err);
res.send(500).status;
}
else {
res.render('find.ejs', {data : data});
}
});
});
在 RestSchema.js 中
var express = require("express");
var mongoose = require("mongoose");
var restaurant = new mongoose.Schema({
name: String,
description: String,
location: String,
phone: Number
});
module.exports = mongoose.model("RestInput", restaurant);
在我的 .ejs 文件中
<% data.forEach(function (items) { %>
<td> <%= items.name %> </td>
<td> <%= items.description %> </td>
<td> <%= items.location %> </td>
<td> <%= items.phone %> </td>
<% }) %>
</tr>
数据已成功保存,但当我尝试访问我的 ejs 文件时,我收到一条错误消息,指出数据未定义。
如果您能帮助我,我将不胜感激。
【问题讨论】:
-
我看不出该代码会抛出该错误的任何原因。如果要打印,控制台中的数据输出会是什么?
-
不需要添加ejs文件终止。错误没有得到正确处理。您可以为此使用下一个功能或例如: res.status(500).send(err.message);
-
当我显示数据时,电话属性没有出现。我不知道为什么会这样。请帮忙。