この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
log/ や public/など RAILS_ROOT 以下のファイルへの扱うとき、File や FileUtil などのクラスを使わずシンプルに記述できます。
BEFORE
Logger.new(File.join(Rails.root, "log", "production.log"))
AFTER
Logger.new(Rails.root.join("log", "production.log"))
POINT
Rails.root
が返すオブジェクトはPathname
なので、File
やFileUtil
でできることのほとんどをメソッドとして持っています。File.join
などを改めて呼ぶ必要はありません。
REFERENCE
http://ruby-doc.org/stdlib-2.4.3/libdoc/pathname/rdoc/Pathname.html
VERSIONS
Ruby MRI 2.3.1
Rails gem 'rails', '5.0.0'