开发者

Dynamic setting of form_tag submit destination

Is it possible to set the location you want to submit a form to dynamically at runtime with a form_tag? What I have is a shared partial view that is used to filter data on several screens. The view contains several different form fields and a submit button, so the UI for these controls is the same for all the screens that use it, thus the shared partial view. The difference is that I want the submit to go back to a different location depending upon which page the partial view is contained in. Is there someway to pass the开发者_Python百科 destination in via the render tag like the following?

<%= render 'shared/event_filter', :dest => event_path %>

and then consume it within the partial view as follows?

<%= form_tag(:dest, :method => "get") do %>

The above code doesn't work, it gives me a nomethod error on the :dest in the form_tag, but I was just putting in this question to help illustrate what I was trying to do.

Any help/suggestions would be appreciated.


I think you might be looking for something along these lines:

<%= render :partial => 'shared/event_filter', :locals => {:form_action => event_path} %>

Which just renders the partial named shared/_event_filter.html.erb and passes in a variable called form_action with value of event_path.

Then inside your partial:

<%= form_tag form_action, :method => "get" do %>
    <!-- snip -->
<% end %>
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜