2016年1月6日水曜日

rails5 rails4.2.4からrails5.0.0beta1の移行作業でわかったこと まとめ その2

  • 公開日:2016年01月06日

環境


  • rails 4.2.4, rails 4.2.5 → rails5.0.0beta1
  • ruby 2.2.3
  • rbenv rbenv 0.4.0-183-gc18a3f9

はじめに


rails5のbeta1がリリースされました。春頃には正式なrails5がリリースされるのではないでしょうか。
しかし、Gemfileをrails5に変更しても、既存のrailsアプリはまず動かないと思います。

現在、私も色々とエラーを潰しながら調査と更新に必要な修正作業をしています。その中で、これまでにわかったことを記事としてまとめました。早めにrails5に更新しようと考えている人の参考になれば幸いです。
また、この記事は前回の続きになっています。
read in English

config.loggerの未対応


これは私がどはまりしたエラーです。rails4.2系ではこの設定でrailsアプリの日時のログローテーションを実施しているのですが、この設定のせいでrails5.0.0beta1のアプリが動作しなくなっていました。
なので、以下のように修正します。

変更前

{project_folder}/config/environments/test.rb(development.rb and production.rb)

  config.logger = Logger.new('log/development.log', 'daily')

変更後

{project_folder}/config/environments/test.rb(development.rb and production.rb)

  # no use
  # config.logger = Logger.new('log/development.log', 'daily')

ログローテーションは別の方法で実装してください。

cannot load such file -- sass


これはsassファイルが読み込めないときに発生するエラーです。なので、sassファイルを削除するだけで動作します。
個人的にも、sassを使うのはあまり良い手段だとは思えません。cssを使いましょう。

bin/setup


rails4と比較して最も変更があったのがこのファイルです。
rails4までのrakeコマンドが、railsコマンドに変更されています。
このファイルの更新は、

terminal

rake rails:update

コマンドで上書きできると思います。変更前と変更後をdiffで比較して書き換えてください。

その他


上記以外にrails5用に変更、もしくは追加したほうが良いファイルです。
適当なrails5プロジェクトを作成して、diffでフォルダごと比較して変更していきましょう。


// change
config/environments/development.rb

// new file
active_record_belongs_to_required_by_default.rb

まとめ


前回と今回の記事で、私が作成したアプリ動作するようになりました。
なので、近いうちにアプリをrails5 beta1に変更しようと思います。

なにか気づいたことがあれば、また記事にしたいと思います。

以上です

Rails4の開発にオススメの本


Rubyの応用力をつけるのにオススメの本


運営サイト(railsで作成しています)


関連記事


English

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...