【发布时间】:2014-03-28 01:43:56
【问题描述】:
下面的代码来自我正在做的一个教程。我想知道如何捕获和响应发布请求。我以为这很容易理解,但问题如下。
首先是代码:
节点
app.post('/tasks', function(req, res){
var task = new Task(req.body.task); // This line
task.save(function (err) {
if (!err) {
res.redirect('/tasks/new');
}
else {
throw err;
}
});
});
翡翠
extends ../layout
block content
h1 New task view
form(role='form', method='post', action='/tasks')
fieldset
legend Add a task
div.form-group
label Task
input(name='task[task]', class='form-control') // This line
button.btn.btn-primary(type='submit') Submit
button.btn.btn-default(type='reset') Clear
猫鼬
mongoose.connect('mongodb://localhost/todo_development');
var Schema = mongoose.Schema;
var ObjectId = Schema.ObjectId;
var Task = new Schema({
task: { type: String, required: true }
});
var Task = mongoose.model('Task', Task);
在上面的前两个代码块中,每个代码块都有一个名为“这一行”的注释。在这些行中是作为属性/属性的词 task。当我将这些更改为“oink”之类的其他内容时,它会破坏代码。
例如,如果我这样做:
节点
var task = new Task(req.body.oink); // This line
玉
input(name='oink[oink]', class='form-control') // This line
没用。 我不知道为什么也不知道如何正确地发帖请求。 :(
【问题讨论】:
-
也许使用
input(name='oink')?我不明白你为什么在方括号中重复它 -
教程是这样写的。这本书就是这样来的。我想这可能是一个玉器公约之类的。你的想法行不通。我得到一个错误。 500 TypeError: 不能使用 'in' 运算符在 adf 中搜索 '_id'
-
我发现括号引用了架构中的任务对象
标签: javascript node.js mongoose pug