2012-05-23 36 views
2

我試圖做一個有下拉選擇星期的部分視圖,當按下提交按鈕時,用新數據重新打開同一頁面。下面是我有問題的代碼:Ruby on Rails:form_tag不能正常工作

= form_tag(:controller => "/payroll_issues", :action=> "index") do 

當單擊該按鈕,它給你帶來正確的URL,但無法載入網頁,稱「沒有收到任何數據,無法加載網頁因爲服務器沒有發送數據。「

的事情是,當我運行代碼

= form_tag(:controller => "/payroll_issues", :action=> "change_week") do 

其中change_week只是重定向到索引,一切都很正常。有什麼我失蹤的索引?

+0

可以發佈控制器代碼嗎? – edralph

回答

1

表單標籤助手創建一個表單標籤method = 'post',您的索引操作的路由可能設置爲只接受'get'請求。

要檢查,你可以運行rake routes

如果你真的想,你可以添加一個途徑接受請求後用食指操作,像這樣:

# routes.rb 
match '/' => 'payroll_issues#index', :as => :index, :via => :post 

但是,你會用你的問題中的第二種技術好得多,創建一個單獨的動作並重定向。

def change_week 
    #do change week stuff 
    redirect_to payroll_issues_url 
end