從哪裏可以找到不贊成的方法,API等的列表,以便從Rails 2.x升級到Rails 3?Rails 3棄用的方法和API
回答
的Rails 3 release notes有很多很好的信息:
Railties現在不贊成:
- RAILS_ROOT贊成Rails.root的,
- RAILS_ENV贊成Rails.env,並
- RAILS_DEFAULT_LOGGER贊成Rails.logger。
的ActionController:
- 的cookie_verifier_secret已被棄用,現在取而代之的則是通過Rails.application.config.cookie_secret分配 ,搬進了自己的文件: 配置/初始化/ cookie_verification_secret.rb。
- filter_parameter_logging不推薦使用 config.filter_parameters < <:密碼。
的ActiveRecord
- named_scope在Active Record類已被棄用,並已更名只是範圍。
- save(false)已棄用,有利於save(:validate => false)。
- model.errors.on已被棄用,以支持模型。錯誤[]
- 的ActiveRecord :: Base.colorize_logging和config.active_record.colorize_logging贊成的Rails :: LogSubscriber.colorize_logging的或config.colorize_logging
的ActionMailer已被棄用
- :字符集,: content_type,:mime_version,:implicit_parts_order都不贊成使用ActionMailer.default:key => value樣式聲明。
- 不建議使用Mailer動態create_method_name和deliver_method_name,只需調用method_name,它現在返回一個Mail :: Message對象。
- ActionMailer.deliver(message)已棄用,只需調用message.deliver。
- TEMPLATE_ROOT已過時,從format.mime_type方法選項傳遞給渲染調用一個PROC內的郵件生成塊
- 內部的體的方法,以限定實例變量已被棄用(體{:的ivar =>值}),只需直接在方法中聲明實例變量,並且它們將在視圖中可用。
- 不適合使用app/models的郵件程序,請改用app/mailers。
我發現這是一個很有價值的購買http://www.railsupgradehandbook.com/
檢查有關個人應用程序的具體細節將在其上運行的rails_upgrade插件(你可以在GitHub上找到它)的一個好方法,它將輸出棄用通知和建議
一些有用的信息的列表也總結了這篇博客文章:http://www.simonecarletti.com/blog/2010/07/the-way-to-rails-3/
此外Railscasts有一堆對API的各種變更方式的電影。請前往Railscasts.com並瀏覽rails3標記下的電影。
我不認爲你會發現一個詳盡的貶值列表,因爲它確實取決於你升級哪個版本的導軌。例如,Rails 2.3.9(剛剛發佈)在前一版本中增加了額外的折舊。
Rails Upgrade Handbook(如上所述)是一個很好的工具,包含12頁的折舊警告和如何解決它們。我不認爲他們會在這裏發表,因爲你應該放棄9美元,並下載PDF獲得清單。包含的教程和其他信息使其非常值得。這是給我的。
如果您不想支付良好的信息,那麼只需運行rails_upgrade plugin爲您的特定應用程序。有關該插件如何在rails upgrade plugin github頁面上的更多信息。
支付這樣一個通常免費的信息是絕對荒謬的。 – 2010-09-15 06:21:16
您應該瀏覽rails源代碼並提取所有折舊並將它們發佈到博客上,以便它們可以免費提供所有信息。 – 2010-09-15 16:32:25
我現在確實這樣做,認爲還有更好的辦法! – 2010-09-17 17:23:44
活動記錄的另一個地方是棄用活動記錄(http://m.onkey.org/active-record-query-interface)。
回覆如果發現有用。
如何在ActiveRecord中禁用彩色日誌記錄without Rails?而不是保持AR解耦,獨立的ORM,它現在緊緊地綁定到Rails框架。
將ActiveRecord :: Base.colorize_logging移動到Rails :: LogSubscriber.colorize_logging只是不好的設計和錯誤的方向,是不是?
我發現瞭如何在Rails之外禁用彩色日誌記錄: 'ActiveSupport :: LogSubscriber.colorize_logging = false' – 2012-10-28 19:01:53
- 1. Rails 3 SSL棄用
- 2. 的Rails 3和update_attributes方法
- 3. Rails 3 new_record?已棄用
- 4. offline_access棄用和方案3和4
- 5. Rails 3的每種方法和Ajax
- 6. Rails 3 api - 最常用方法的位置
- 7. 已棄用`validates_presence_of`(從Rails 3開始)?
- 8. Rails 3和部分用法
- 9. 的Rails 3 Symbol.gte方法
- 10. 的Rails 3 run_callbacks方法
- 11. Rails 3表單操作和方法
- 12. Rails,Mongrel和棄用警告
- 13. 棄用方法addPreferencesFromResources
- 14. GCD棄用方法
- 15. 沉默在Rails 3中的棄用警告3
- 16. Rails和FreeagentCentral API用法
- 17. JasperReport中的棄用方法
- 18. 的UITableViewCell:initWithFrame:方法reuseIdentifier棄用
- 19. iOS中的棄用方法
- 20. Jetty SslConnector的棄用方法
- 21. Rails 3 Contact Form,undefined方法?
- 22. Rails 3 to_i方法問題
- 23. 使用Cucumber和Rails 3.1時的棄用警告:class_inheritable_attribute已棄用
- 24. Rails 4中已經廢棄了before_create和after_create方法嗎?
- 25. 如何標記棄用API中使用的java私有方法
- 26. Rails 2.2.2 application_helper.rb方法 - 遷移到Rails 3
- 27. 的Rails 3:與方法調用和模型關聯
- 28. overwrite_params從Rails 2.3.6開始棄用 - 接受的解決方法?
- 29. 如何正確選擇舊的,棄用的和未棄用的方法?
- 30. Rails 5 api - undefined方法`user_url'
我想要詳盡無遺。 – 2010-09-06 23:13:17