我將舊的Ruby(1.8.7)和Rails(2.2.2)應用程序遷移到Ruby(1.9.3)和Rails(3.2 0.12)以下所有這些優秀的參考資料:遷移到Rails 3.2 - 未定義的方法'會話='爲ActionController :: Base:類
Rails Upgrade Script
Rails 3 Migration Blog
Booting the Rails 3 App
我能夠啓動應用程序的Rails的服務器,但是當我通過瀏覽器,然後BLAMMO訪問的應用程序!我得到一個服務器錯誤:
!!意外的錯誤在處理請求:對的ActionController :: Base的未定義的方法`會話=」:類
當我用grep -r爲 「會話=」 我得到:
/var/www/vendor_sandbox/config/application.rb: config.action_controller.session = {
/var/www/vendor_sandbox/config/environment.rb.rails2: config.action_controller.session = {
/var/www/vendor_sandbox/destroy/config/environment.rb: config.action_controller.session = {
/var/www/vendor_sandbox/generate/config/environment.rb: config.action_controller.session = {
根據谷歌搜索那個錯誤,這是Rails 2的一個老問題,所以我想知道如果我在遷移過程中遺漏了某些東西,或者這是其他東西。由於
這裏是我的終端會話活動:
[email protected]:/var/www/vendor_sandbox# ruby -v
ruby 1.9.3p385 (2013-02-06 revision 39114) [i686-linux]
[email protected]:/var/www/vendor_sandbox# rails --version
Rails 3.2.12
[email protected]:/var/www/vendor_sandbox# rails s
=> Booting Thin
=> Rails 3.2.12 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
>> Thin web server (v1.5.0 codename Knife)
>> Maximum connections set to 1024
>> Listening on 0.0.0.0:3000, CTRL+C to stop
然後,我從一個瀏覽器中點擊應用和:
!! Unexpected error while processing request: undefined method `session=' for ActionController::Base:Class
您曾經可以說會話:關閉會話(這些日子不需要),但沒有看到代碼只是猜測 – 2013-02-19 15:00:29
好。我會仔細研究「會話」,看看會發生什麼。謝謝 – Slinky 2013-02-19 15:29:29
@Frederick - 查看我的更新 – Slinky 2013-02-19 16:11:10