【发布时间】:2014-01-27 07:15:04
【问题描述】:
我正在使用 Mongoose 和 Express.js 来制作一个简单的待办事项列表应用程序。当我从表单发布时,我想保存列表项并在下一页上呈现一条消息。 (这稍后将被重定向替换。)Chrome 中的页面将停止显示,而不是显示消息,直到它最终显示
没有收到数据
无法加载网页,因为服务器未发送数据。
重新加载此网页。
按重新加载按钮重新提交加载页面所需的数据。
错误代码:ERR_EMPTY_RESPONSE
火狐说The connection to the server was reset while the page was loading.
我的路线是这样的:
exports.post = function(req, res) {
var Item = require('../models/Item')
new Item({
content: req.body.content
}).save(function(){
res.send('item saved')
})
}
我也试过了:
var item = new Item({
content: req.body.content
})
item.save(function(){
res.send('item saved')
})
做同样的事情。
我的模型如下所示:
var mongoose = require('mongoose')
var ItemSchema = new mongoose.Schema({
content: String
})
var Item = mongoose.model('Item', ItemSchema)
module.exports = Item
如何让保存中的函数执行?
编辑: 这是客户端代码:
layout.jade
doctype html
html
head
meta(charset='utf-8')
title Listocracy
body
block content
index.jade
extends layout
block content
h1 Listocracy
form(method='post', action='/item')
input(type='text', name='content')
button(type='submit') Add Item
如果我将res.send 拉出保存功能,它将按预期打印文本。我认为问题在于保存功能。
【问题讨论】:
-
我忘记连接到 MongoDB。
标签: javascript node.js mongodb express mongoose