我有一个jade模板,我有一个create user部分,用于将用户添加到orchestrate.io数据库。下面我有一个删除和更新链接的所有用户的列表。当密钥到达服务器时,通过URL将密钥作为res.params.id传递给删除工作正常。当我使用密钥更新时,它没有从输入字段中看到新值,因此我没有获得在服务器端使用的有效负载值。我该如何更新此字段?这是我的代码: 服务器端 -
server.route({
method: 'GET',
path: '/update/{id}',
handler: function(req, reply){
db.put('users', req.params.id, {
"name": 'name',
"password": 'password',
"email": 'email'
})
.then(function (result) {
reply.redirect('/');
})
.fail(function (err) {
reply('no update');
});
}
});
玉模板 -
doctype html
html
head
title Last October Weekly Challenge
body
div.container
p This is the main user page. You can create, update, delete and view users.
form(action='/',method='POST')
label(for='name') Name
input(id='name',type='text',value='',placeholder='Enter Name',name='name')
label(for='password') Password
input(id='password',type='password',value='',placeholder='Enter Password',name='password')
label(for='email') Email
input(id='email',type='email',value='',placeholder='Enter Email',name='email')
input(id='submit',type='submit',value='Create User',name='submit')
p Here are the current users:
table
each item in items
tr
td
input(type='text' name='update-name' value= item.value.name)
td
input(type='text' name='update-password' value= item.value.password)
td
input(type='email' name='update-email' value= item.value.email)
td
a(href="/delete/" + item.path.key) Delete
td
a(href="/update/" + item.path.key) Update
感谢您的帮助。
答案 0 :(得分:0)
我看到了一些可能导致问题的事情。 1)你的server.route方法是“GET”但它应该是“POST”来处理/匹配表单的方法属性;并且,2)您没有将ID作为表单中的隐藏字段(或作为操作URL的一部分,例如form action =“/ update / 12345”method =“POST”...)。