2014-01-08 19 views
-1

基本上,這似乎是https://github.com/rails/rails/issues/7725在一年前由一位停止響應的人報告(heh http://xkcd.com/979/ActionDispatch :: Http :: Parameters#encode_params嘗試修改凍結的字符串,並從Rails 3.0升級到Rails 3.2.16

我從最後一個Rails 3.0升級到Rails 3.2.16時得到了這個。

有問題的途徑,例如形式/en/contact的路線(從config/routes.rb

# pages 
STATIC_PAGES.each do |slug, desc| 
    match ":language/#{slug}" => 'pages#static_page', :defaults => {:slug => slug, :language => 'en'}, :via => :get, :as => slug.underscore.to_s 
end 

我嘗試做,做同樣的事情和休息都失敗了一個示例應用程序(複製相關的模型Page提供HTML應用到一個新應用程序的一部分,複製Gemfile & Gemfile.lock,並試圖重現,一切都很好)

這是堆棧跟蹤:https://gist.github.com/bbozo/8315184 - 不是從我的應用程序單行在這

再次,這是那些哎呀,鬼的問題之一,如果任何人有一種預感哪裏去尋找它,你讓我非常開心

: -/

+1

爲了誰downvoted,請讓我知道在這個問題解決,TIA – bbozo

回答

0

欺騙的關鍵從哈希迭代器固定對我來說,這裏

# pages 
STATIC_PAGES.each do |slug, desc| 
    match ":language/#{slug}" => 'pages#static_page', :defaults => {:slug => slug.dup, :language => 'en'}, :via => :get, :as => slug.underscore.to_s 
end 

問題是STATIC_PAGES是一個哈希與String鍵常數,它的按鍵被凍結。在請求路由默認啓動的路由器嘗試使用存儲在:defaults => {:slug => slug中的凍結的slug字符串執行某些操作時 - rails 3.0中的某些內容3.2.16 changelog引入了此值的修改,並且在ActionDispatch中發生了閃亮的異常疊加。

「解凍」 slugslag.dup固定問題

相關問題