嗨提交表单'put'方法用于将数据从表单发送到sinatra.the put方法在app.rb中定义put方法调用erb文件显示两个值.
但没有任何东西可以展示,有人可以帮忙.
put '/form' do
@name = params[:FirstName]
@last = params[:LastName]
erb :formact
end
Run Code Online (Sandbox Code Playgroud)
形成
<form name="biodata" action="form" method="put" onsubmit="validateForm()">
code
</form>
Run Code Online (Sandbox Code Playgroud)
谢谢
您无法PUT直接从浏览器发送请求,但您可以使用Sinatra的method_override选项伪造它,默认情况下,它以经典样式设置为true.如果您使用模块化样式,则必须启用它enable :method_override.
这将检查对名为的参数的传入请求_method,如果找到一个请求,则将调用的请求方法更改为参数值,以便应用程序的其余部分看到使用该HTTP方法进行调用.
让put方法工作的POST方法是使用表单中的方法,但要包含名为"_method"和值为"put"的隐藏输入
<form name="biodata" action="form" method="post" onsubmit="validateForm()">
<input type="hidden" name="_method" value="put" />
code
</form>
Run Code Online (Sandbox Code Playgroud)
这与Rails中使用的技术相同(实际上它与使用的中间件相同 - Rack::MethodOverride).
| 归档时间: |
|
| 查看次数: |
1482 次 |
| 最近记录: |