Railsでファイル操作するとき
Railsでファイル操作するとき
Railsでファイル操作するときはDir.children
(Ruby2.5以上で利用可能)ではなくrails.root.join
を利用する方が良い。
Dir.children
実行時ファイルからの相対pathで取得してしまうので、実行箇所によって動かなくなるケースが稀にある。
一方rails.root.join
はrootディレクトリからの相対パスで取得できるので、実行個所によって動くなるケースがない。
参考サイト
Ruby 2.5新メソッド: Dir.children と Dir.each_child(翻訳)|TechRacho by BPS株式会社
Rails.root.join("foo", "bar")よりも、Rails.root.join("foo/bar")が良いのでは?というお話 - Qiita