私は現在Rails3.2アプリケーションに取り組んでいますが、Rails4が間もなく登場することを認識しています。正式にリリースされたとき、またはおそらく2、3のポイントリリースの後で、Rails 4への移行を容易にするためにアプリケーションを実装するときに、今知っておくべきことは何ですか?一部の機能がgemにスピンアウトされることは知っていますが、Rails4.1以降でのサポートは保証されていません。
アップグレードガイド:http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#upgrading-from-rails-3-2-to-rails-4-0とリリースノート:http://edgeguidesを読みました。 rubyonrails.org/4_0_release_notes.html。
Rails 4の優れた新しい光沢のある機能ではなく、アップグレードで頭痛の種となる落とし穴を特定するために、この点にもっと興味があります。
したがって、この読書とインターネットからの抜粋に基づいて、私が現在持っているのは次のとおりです。
- 少なくともRuby1.9.3にアップグレードしてください。
- プラグインは使用しないでください。代わりにgemを使用してください。
- ActiveRecord::IdentityMapはRails4には含まれません。
- ActiveResourceはコアRails4の一部ではありませんが、別のgem(activeresource)に含まれます。おそらく、RESTAPIの他のORMを検討してください。
- ActiveRecordでダイナミックファインダーメソッドを使用しないでください
find_all_by_*
。scoped_by_*
これらは非推奨になります。where
代わりに使用してください。 - ハッシュベースのファインダーは避けてください。たとえば、代わりに
User.find(:all, :conditions => ...
使用してください。where
- ActiveRecordの熱心に評価されたスコープ:スコープにはラムダが必要です。たとえば、使用し
scope :red, -> { where(color: 'red') }
ないでscope :red, where(color: 'red')
ください。 - ActiveRecord :: SessionStoreは別のgem(
activerecord-session_store
)になります。 - BufferedLoggerの代わりにActiveSupport::Loggerを使用します。
- Rails 4のStrongParametersを見越してstrong_parametersgemの使用を開始します。これには、ActiveRecordレベルでattr_accessor、attr_accessible、attr_protectedの代わりに
params.require
、コントローラーに入れて正しいパラメーターを強制的に提供することが含まれます。
...しかし、もっとあると確信しています。誰かが知っておくべき包括的で常識的なリストを提供できますか?Rails 4の非推奨の完全なリストを探しているわけではありません。これは、知っておくべき重要なことであり、将来にわたって利用できるようにするために今できることです。