1. ホーム
  2. ruby-on-rails

[解決済み】railsでカスタム設定変数を定義する方法

2022-03-25 06:02:58

質問

例えば、development.rbのような設定ファイルにupload_directoryを定義し、コントローラからアクセスできるようにしたいのですが、どのようにすればよいのでしょうか?

次に、アプリケーションでアップロードのためにS3をサポートすることを計画していました。S3アクセス、秘密鍵を含むyamlファイルを追加したい場合、Railsアプリでそれをどのように初期化し、その設定ファイルで定義した値にどのようにアクセスすればよいのでしょうか。

どのように解決するのですか?

アップデート1

とてもおすすめです。私は Railsの設定 gemが提供するきめ細かなコントロールのためです。

アップデート2

手っ取り早く解決したい場合は、以下をご覧ください。 Jack Prattの回答 をご覧ください。

以下の私のオリジナルの回答はまだ機能しますが、この回答はもう古くなっています。アップデート1および2をご覧になることをお勧めします。

オリジナルの回答です。

手っ取り早く解決するには、"YAML設定ファイル"を見ることです。 スクリーンキャスト ライアン・ベイツ氏によるものが非常に参考になると思います。

まとめると

# config/initializers/load_config.rb
APP_CONFIG = YAML.load_file("#{Rails.root}/config/config.yml")[Rails.env]

# application.rb
if APP_CONFIG['perform_authentication']
  # Do stuff
end