我有一个简单的表格,其中有一个列表:
<form method ="post" action ="">
<select>Select subject
<option value="1">Maths</option>
<option value="2">Science</option>
</select>
<input type="submit" name="Submit" />
我的问题是,如果我选择Maths选项,我希望将值发送到例如/ 1。 什么应该写在行动?如何写出这条路线?
get '' do
end
答案 0 :(得分:6)
您的路线可能如下所示:
post '/subject' do
@subject = params[:subject]
# do whatever you want now
end
但您需要为select
代码指定一个名称,并form
采取行动:
<form method="post" action="/subject">
<select name="subject">
<!-- etc etc -->
另请查看相关问题。
答案 1 :(得分:0)
我们倾向于将查询视为GET(有意义,它毕竟是检索信息) 而不是一个POST(实际上并没有改变数据)仍然用结果页面响应
我们经常看到的常见(粗糙)模式是重写(在js或重定向中) 到表格
获取'/ search /:q1 /和/:q2' //由q1和q2过滤的搜索结果 端
也很整洁