Comment utiliser les variables d'environnement dans RubyOnRails

■ Article en anglais ↓ [How to Use Environment Variables in Ruby On Rails] (https://qiita.com/alokrawat050/items/ff6dceec32baa0c8fa57)

Que sont les variables d'environnement?

Chaque application nécessite des paramètres de configuration tels que les informations d'identification du compte de messagerie et les clés API pour les services externes. Vous pouvez utiliser des variables d'environnement pour transmettre les paramètres de configuration locaux à votre application. Il existe plusieurs façons d'utiliser les variables d'environnement dans Ruby On Rails, et il existe également des gemmes comme FigaroGem. Pour cet article, j'utiliserai le fichier local_env.yml pour partager comment l'implémenter.

Garder les fichiers de variables d'environnement privés

Si vous utilisez GitHub pour stocker et partager votre code et que votre projet est open source, tout développeur peut accéder à votre code. Si vous collaborez avec une équipe utilisant un référentiel Git privé et que vous ne souhaitez pas partager vos informations personnelles ou vos clés API avec le public, les paramètres locaux peuvent ne pas convenir à tous les membres de votre équipe.

Utilisez le fichier local_env.yml:

Créez un fichier simple contenant les paires clé / valeur pour chaque variable d'environnement à l'aide du format de fichier YAML standard.

** Créez le fichier config / local_env.yml: **

MAIL_USERNAME: 'Your_Username'
MAIL_PASSWORD: 'Your_Username'

** Défini sur .gitignore ** Si vous avez créé un référentiel git pour votre application, le répertoire racine de votre application doit contenir un fichier nommé .gitignore. Ajoutez la ligne suivante au fichier .gitignore

/config/local_env.yml

** Défini dans le fichier d'application Rails ** Après avoir défini les variables d'environnement, le fichier "local_env.yml" doit être défini dans "config / application.rb". Définissez le code suivant dans le fichier ** config / application.rb **

config.before_configuration do
  env_file = File.join(Rails.root, 'config', 'local_env.yml')
  YAML.load(File.open(env_file)).each do |key, value|
    ENV[key.to_s] = value
  end if File.exists?(env_file)
end

Le code ci-dessus définit les variables d'environnement à partir du fichier local_env.yml.

** Utilisez des variables d'environnement dans le code ** Vous pouvez utiliser ENV ["MAIL_USERNAME"] dans votre application Rails. Exemple:

ActionMailer::Base.smtp_settings = {
    address: "smtp.gmail.com",
    enable_starttls_auto: true,
    port: 587,
    authentication: :plain,
    user_name: ENV["MAIL_USERNAME"],
    password: ENV["MAIL_PASSWORD"],
    openssl_verify_mode: 'none'
    }

Profitez du codage! : sourire :: sourire:

Si vous avez des questions, veuillez nous contacter.

c'est tout. Je vous remercie.

Recommended Posts

Comment utiliser les variables d'environnement dans RubyOnRails
Comment utiliser les variables Java
[Rails] Comment utiliser PostgreSQL dans l'environnement Vagrant
Comment utiliser Lombok au printemps
[Traitement × Java] Comment utiliser les variables
Comment utiliser InjectorHolder dans OpenAM
Comment nommer des variables en Java
Prise en charge multilingue de Java Comment utiliser les paramètres régionaux
[Docker] Utiliser des variables d'environnement dans Nginx conf
Comment utiliser le volume nommé dans docker-compose.yml
Comment utiliser Docker dans VSCode DevContainer
Comment utiliser MySQL dans le didacticiel Rails
Comprendre en 5 minutes !! Comment utiliser Docker
Comment utiliser credentials.yml.enc introduit à partir de Rails 5.2
Comment utiliser ExpandableListView dans Android Studio
Comment utiliser Map
Comment utiliser rbenv
Comment utiliser with_option
Comment utiliser fields_for
Comment utiliser java.util.logging
Comment utiliser collection_select
Comment utiliser Twitter4J
Comment utiliser active_hash! !!
Comment utiliser MapStruct
Comment utiliser TreeSet
[Comment utiliser l'étiquette]
Comment utiliser l'identité
Comment utiliser le hachage
Comment utiliser Dozer.mapper
Comment utiliser Gradle
Comment utiliser org.immutables
Comment utiliser java.util.stream.Collector
Comment utiliser VisualVM
Comment utiliser Map
[Rails] Comment utiliser les boîtes de sélection dans Ransack
Comment installer Titan 2D (v4.2.0) dans un environnement virtuel
Comment utiliser JQuery dans Rails 6 js.erb
Comment intégrer des variables JavaScript dans HTML avec Thymeleaf
Comment créer un environnement Java en seulement 3 secondes
[Ruby] Comment utiliser la sortie standard dans le branchement conditionnel
[Java] Comment utiliser Map
Comment utiliser Queue avec priorité
[Rails] Comment utiliser enum
Comment utiliser java Facultatif
Comment utiliser JUnit (débutant)
Comment utiliser le retour Ruby
Comment utiliser la bibliothèque Z3 dans Scala avec Eclipse
[Rails] Comment utiliser enum
Comment utiliser la classe Java
Comprendre comment utiliser le décodeur JSON de Swift en 3 minutes
Comment utiliser Big Decimal
[Java] Comment utiliser removeAll ()
Comment utiliser String [] args