我目前正在开发一种工具,它采用表单输入标签并根据这些输入生成页面
我的表格如下:
<%= form_tag({:action => "show", :controller => "tool"}) do %>
....
....
....
<% end %>
在我的控制器中我有这样的show方法:
def show
param1 = params[:param1]
param2 = params[:param2]
param3 = params[:param3]
param4 = params[:param4]
#process params
end
然后我有我的show.html.erb来处理show方法。为了这个工作,我有我的
routes.rb中:
match "/tool" => "tool#index"
match "/tool/show/" => "tool#show"
我希望网址显示所有参数,例如/tool/param1/param2/...
,而不仅仅是/tool/show/
。我尝试将以下内容添加到路由
match "/tool/show/:param1/:param2" => "tool#show"
但它会搞砸,因为我的表单只调用show
。如何使用方法show
创建一个包含所有参数的链接,并在提交表单后生成参数
答案 0 :(得分:0)
您是否需要将参数用斜杠分隔,或者是GET
参数的常用方法?例如,像这样:
<强> /帖/ 5电子邮件= DEF&安培;消息= GHI&安培;名称= ABC 强>
您可以使用您的URL帮助程序使用以下代码创建类似的链接:
<%= link_to "link text", post_path(name: @post.name, email: @post.email, message: @post.message) %>