我有一个用于编辑对象的表单,我想使用 Express 3.x 和 node.js 正确处理它
编辑物品路线:/item/edit
显示用于编辑对象的表单。
我想我有三个选择:
1)放置一个值为“edit”的隐藏字段,这样我就可以在express中正确处理它
这需要更多的工作,因为我必须在app.post('/item', routes.item.post);
它还将处理新的创作和更新。
2)仅使用 jQuery.ajax() put 调用提交编辑表单。
这允许我使用app.put('/item', routes.item.put);
3)发送一个post请求到/item/edit而不是/item来处理更新/编辑
帖子将仅用于在 /item/edit 进行更新:app.post('/item/edit', routes.item.edit.post);
解决方案 #2 是唯一一种在查看 app.js 中的代码时直观且明显的解决方案,并且遵循 CRUD 的标准约定。但如果由于某种原因未启用 javascript,他们就无法编辑其对象。
http://www.senchalabs.org/connect/middleware-methodOverride.html http://www.senchalabs.org/connect/middleware-methodOverride.html
express:
app.use(express.bodyParser())
app.use(express.methodOverride())
你的html表单:
<form method="POST">
<input type="hidden" name="_method" value="put">
</form>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)