前提・実現したいこと
こちらのサイトを参考に、wheneverに関するコードを組んでいるのですが、
その中でRailsの環境に関する設定が分からないので質問させていただきます。
該当のソースコード
# cronを実行する環境変数 rails_env = ENV['RAILS_ENV'] || :development # cronを実行する環境変数をセット set :environment, rails_env
試したこと
Railsの環境を確認する方法がわからなかったので、調べて、下記コマンドで確認できることがわかりました。
Windowsローカル環境にて。
> rails console > Rails.env => "development"
質問
・質問1。
ENV['RAILS_ENV']とは何ですか?
試したことにあるように、rails consoleで、Rails.envで出力した結果とENV['RAILS_ENV']は同じですか?
・質問2。
参考サイトで、||の書き方をしていることが気になりました。
rails_env = ENV['RAILS_ENV'] || :development
ENV['RAILS_ENV']がnilの場合、:developmentが適用されることになると思いますが、
ENV['RAILS_ENV']がnilの場合などありえますか?どういったケースになりますか?
・質問3。
質問1がRails.envで出力した結果とENV['RAILS_ENV']が同等だった場合は不要の質問となりますが、
rails consoleなどでENV['RAILS_ENV']を調べる方法はありますか?
本番環境でENV['RAILS_ENV']を調べたいのですが、諸事情でファイルはあまり変更できません。
ファイル変更可能であるのならば、
puts ENV['RAILS_ENV']
で調べればよいのはわかるのですが。
・質問4。
setメソッドって、Railsのリファレンスにありますか?
setメソッドに関して、検索してもあまり記事が出てこないのですが、
何か使い方とか説明が載ってる記事や、説明など教えていただけませんか?
おそらく、第1引数の変数に第2引数の値を代入するであろうことは想像はつくのですが、
ドキュメントや説明記事を見かけないのでしっくりこない感じです。
set :environment, rails_env
・質問5。
:environmentは何ですか?
検索しても情報が出てこなかったのですが、:environmentは何を指しているのでしょうか?
set :environment, rails_env
補足情報(FW/ツールのバージョンなど)
Ruby on Rails 5
Windows(Railsのローカル環境)
Linux(Railsのテスト環境、本番環境, nginx)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/01 02:06
2019/10/01 03:13
2019/10/01 04:08 編集
2019/10/01 05:31
2019/10/01 07:46