■ Englischer Artikel ↓ [How to Use Environment Variables in Ruby On Rails] (https://qiita.com/alokrawat050/items/ff6dceec32baa0c8fa57)
Für jede Anwendung sind Konfigurationseinstellungen erforderlich, z. B. Anmeldeinformationen für E-Mail-Konten und API-Schlüssel für externe Dienste. Sie können Umgebungsvariablen verwenden, um lokale Konfigurationseinstellungen an Ihre Anwendung zu übergeben. Es gibt verschiedene Möglichkeiten, Umgebungsvariablen in Ruby On Rails zu verwenden, und es gibt auch Juwelen wie FigaroGem. In diesem Artikel werde ich die Datei local_env.yml verwenden, um zu teilen, wie sie implementiert wird.
Wenn Sie GitHub zum Speichern und Freigeben Ihres Codes verwenden und Ihr Projekt Open Source ist, kann jeder Entwickler auf Ihren Code zugreifen. Wenn Sie mit einem Team über ein privates Git-Repository zusammenarbeiten und Ihre persönlichen Informationen oder API-Schlüssel nicht für die Öffentlichkeit freigeben möchten, sind die lokalen Einstellungen möglicherweise nicht für alle Mitglieder Ihres Teams geeignet.
Erstellen Sie eine einfache Datei mit den Schlüssel / Wert-Paaren für jede Umgebungsvariable im Standard-YAML-Dateiformat.
** Erstellen Sie die Datei config / local_env.yml: **
MAIL_USERNAME: 'Your_Username'
MAIL_PASSWORD: 'Your_Username'
** Auf .gitignore setzen ** Wenn Sie ein Git-Repository für Ihre Anwendung erstellt haben, sollte das Stammverzeichnis Ihrer Anwendung eine Datei mit dem Namen .gitignore enthalten. Fügen Sie der .gitignore-Datei die folgende Zeile hinzu
/config/local_env.yml
** In Rails-Anwendungsdatei festlegen ** Nach dem Festlegen der Umgebungsvariablen muss die Datei "local_env.yml" in "config / application.rb" festgelegt werden. Legen Sie den folgenden Code in der Datei ** config / application.rb ** fest
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
Der obige Code legt Umgebungsvariablen aus der Datei local_env.yml fest.
** Umgebungsvariablen im Code verwenden ** Sie können ENV ["MAIL_USERNAME"] in Ihrer Rails-Anwendung verwenden. Beispiel:
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'
}
Viel Spaß beim Codieren! : grinsend :: grinsend:
Bei Fragen wenden Sie sich bitte an uns.
das ist alles. Vielen Dank.
Recommended Posts