2010-12-07 26 views
0

是否可以使用form_tag在運行時動態設置要提交表單的位置?我擁有的是用於在多個屏幕上過濾數據的共享局部視圖。該視圖包含幾個不同的表單域和一個提交按鈕,因此這些控件的UI對於所有使用它的屏幕都是相同的,因此是共享的部分視圖。不同之處在於我希望提交返回到不同的位置,具體取決於部分視圖包含在哪個頁面中。有沒有辦法通過渲染標記傳遞目標,如下所示?form_tag提交目的地的動態設置

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

然後在部分視圖中使用它,如下所示?

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

上面的代碼不工作,它給我的一個nomethod錯誤:DEST中的form_tag,但我只是在這個問題將幫助說明什麼,我要怎樣做。

任何幫助/建議,將不勝感激。

回答

0

我想你可能會尋找這些方針的東西:

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

剛剛呈現局部命名shared/_event_filter.html.erb並通過一個名爲form_actionevent_path值變量。

內。然後你的部分:

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