Ich erstellte eine Phoenix-App, dann das Bambus-Modul zum Senden von E-Mails hinzugefügt, und ich schickte erfolgreich meine erste E-Mail mit Elixir heute Nachmittag, aber ich musste den Benutzernamen hart codieren und Passwort in die config.exs
.Wie lade ich Umgebungsvariablen für ein Phoenix Framework-Projekt
Ich lese this article und Richten Sie eine .env-Datei im Stamm meines Phönix-Projekts, und ich versuche, die Umgebungsvariablen mit den folgenden Anweisung (en), innerhalb der config.exs
Datei zu laden.
username: System.get_env("SMTP_USERNAME"),
password: System.get_env("SMTP_PASSWORD"),
Allerdings werden die E-Mails nicht gesendet, und Bambus gibt mir eine ziemlich kryptische Fehlermeldung.
Ich baue das Phoenix App den folgenden Befehl aus dem Terminal,
iex -S mix
und ich manuell die E-Mails innerhalb einer iex Sitzung mit einem Befehl ähnlich den unten senden,
CrjApi.Email.hello_text_email("[email protected]") |> CrjApi.Mailer.deliver_now
aber die E-Mails werden nur gesendet, wenn der Benutzername/das Passwort in der config.exs
Datei fest codiert sind. Wie kann ich die Datei .env
verwenden, die ich eingerichtet habe, damit ich den Benutzernamen/das Passwort nicht fest in die config.exs
codieren muss?
Hinweis: Ich bin mit OS X und mit dem Fisch-Shell.
Wenn Sie in 'iex' gehen und' System.get_env ("SMTP_USERNAME") eingeben, erhalten Sie den erwarteten Wert? Machen Sie dasselbe für das Passwort. –
@JustinWood Der Befehl, den Sie vorgeschlagen haben, gibt 'nil' zurück. Und danke, dass du mich in die richtige Richtung gelenkt hast;) – Chris