2012-11-09 45 views
2

我有问题,我想通过自定义url params form_tag方法。 我已经尝试了很多方法解释在stackoverflow,但没有人似乎是正确的轨3.2.8。如何将params传递给rails form_tag?

这是我目前:

<%= form_tag search_results_path, 
      :method => "get", 
      :params => params.merge(:button => "..."), 
      class: "form-search" do %> 

这并不工作过:

<%= form_tag search_results_path, 
      :method => "get", 
      :params => params.except(:controller, :action). 
         merge(:button => "..."), 
      class: "form-search" do %> 

但当search_results_path完成加载,则params [:键]未设置。

感谢您的帮助。

编辑:

我尝试呈现在视图中,其中有action="/search/params?button=xxx一种形式。这应该是我的选项卡的初始状态,每次页面重新加载时,都应该传递此url参数,以提供当前选项卡。

回答

0

伙计,请解释你正在尝试做什么,而不是如何。 您不会将参数传递给表单,这没有意义。 解释你的目标是什么,我可能会帮助你。

如果你想通过形式从URL参数传递给你的控制器,你只需创建一个隐藏字段,将其值设置使用参数[:PARAM_NAME]

编辑=========== ===

您必须使用url_for或polymorphic_path来生成带参数的url。 像:

form_tag(:url => url_for(...path_with_parameters)) 

form_tag(:url => polymorphic_path(...path_with_parameters)) 
相关问题