Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb expressJS的方法重写不适用于PUT隐藏方法HTML表单_Mongodb_Express_Middleware_Overriding - Fatal编程技术网

Mongodb expressJS的方法重写不适用于PUT隐藏方法HTML表单

Mongodb expressJS的方法重写不适用于PUT隐藏方法HTML表单,mongodb,express,middleware,overriding,Mongodb,Express,Middleware,Overriding,使用express和mongoose/mongo创建todo应用程序。域模型:作者有提醒 在我的app.js中: var bodyParser = require('body-parser') var methodOverride = require('method-override') app.use(bodyParser.json()); app.use(bodyParser.urlencoded({extended:true})) app.use(methodOverride('_meth

使用express和mongoose/mongo创建todo应用程序。域模型:作者有提醒

在我的
app.js
中:

var bodyParser = require('body-parser')
var methodOverride = require('method-override')
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended:true}))
app.use(methodOverride('_method'))
视图/authors/edit.hbs
中使用把手的我的表单:

<h2>Edit {{name}}</h2>
<form action="/authors/{{_id}}" method="post">
  <input type="hidden" name="_method" value="put">
  <label>Name:</label>
  <input type="text" name="name">
  <input type="submit">
</form>
当我检查dev工具中的元素时,我看到了我需要看到的所有内容,但是当我提交时,给了我一个无法发布的错误。创建功能运行良好,因此我的第一个想法是方法重写不起作用。如果我改贴,一切都很好


如果有帮助,请链接到包含此内容的回购协议。根据文档判断,有两种常见的方法可以覆盖此方法:

  • 使用
  • 使用
您使用的是指定表单变量的“旧”方法,您仍然可以使用它,但这需要在服务器端

在我看来,解决此问题的最简单方法是使用查询字符串参数:

<form action="/authors/{{_id}}?_method=put" method="post">

根据文档判断,有两种常见的方法可以覆盖该方法:

  • 使用
  • 使用
您使用的是指定表单变量的“旧”方法,您仍然可以使用它,但这需要在服务器端

在我看来,解决此问题的最简单方法是使用查询字符串参数:

<form action="/authors/{{_id}}?_method=put" method="post">


我尝试了查询字符串方法,得到了一个奇怪的结果,让我尝试重新创建。
无法发布/authors/565a5a74681a4a99ab7067a9?\u method=put
是我收到的错误吗?如果要编辑的文章以“?”或“!”结尾怎么办?这样,方法重写就不起作用了。你知道有什么解决方法吗?我尝试过使用查询字符串方法,得到了一个奇怪的结果,让我试着重新创建。
无法发布/authors/565a5a74681a4a99ab7067a9?\u method=put
是我收到的错误吗?如果要编辑的文章以“?”或“!”结尾怎么办?这样,方法重写就不起作用了。你知道附近有什么工作吗?