前提・実現したいこと
こちらのサイトを参考にしているのですが、
Rails.rootに関してわからないことがあるので質問させていただきます。
試したこと
FILEやFile.expand_pathは分からなかったので、調べてどこをrequireしているかはわかりました。
ruby
1# Rails.rootを使用するために必要 2require File.expand_path(File.dirname(__FILE__) + "/environment")
config/test.rbを下記のように作成し、rails runner .\config\test.rbを実行したら、
Rails.rootのパスが出力されました。
ruby
1# require File.expand_path~は書いていない。 2puts Rails.root
質問
・質問1。
ruby
1# Rails.rootを使用するために必要 2require File.expand_path(File.dirname(__FILE__) + "/environment")
は、config/environmentフォルダを参照しているかと思うのですが、これは書き間違いで、
正しくはconfig/environmentsフォルダを参照したいということでしょうか?
つまり、下記が正しい記述ということでしょうか?
ruby
1# Rails.rootを使用するために必要 2require File.expand_path(File.dirname(__FILE__) + "/environments")
・質問2。
require File.expand_path~を書いていないconfig/test.rbを
rails runner .\config\test.rbで実行したら、
puts Rails.rootでちゃんとルートパスが出力されたのですが、
config/schedule.rbで、requireを書く必要はあるのでしょうか?
・質問3。
ruby
1require File.expand_path(File.dirname(__FILE__) + "/environment(s?)")
の読み込む先のどの箇所でRails.rootを定義しているのでしょうか?
例えば、config\environments\development.rbの中のソースを「root」で検索してみても、
ruby
1if Rails.root.join('tmp', 'caching-dev.txt').exist?
のコードしか見つからず、これはRails.rootを定義しているようには見えませんでした。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/04 15:57 編集
2019/10/04 21:06
2019/10/07 00:57
2019/10/07 02:15
2019/10/07 02:51