Das Senden einer E-Mail aus einer Anwendung über eine Entwicklungs- oder Staging-Umgebung kann umständlich sein, insbesondere wenn Sie eine Vorschau der E-Mail anzeigen möchten, bevor Sie auf die Schaltfläche „Senden“ klicken. Mit dem Gem „mail_view“ können Sie E-Mails ganz einfach direkt in Ihrer Entwicklungsumgebung in der Vorschau anzeigen. Die E-Mail-Vorschau ist wichtig, um sicherzustellen, dass Sie die richtige E-Mail an die richtige Person senden.
Versenden Sie nie wieder eine E-Mail im Dunkeln mit dem Juwel „mail_view“! Erfahren Sie weiter unten mehr darüber, wie es während der Entwicklungsphase in Ihre Anwendung implementiert werden kann.
Rails Email Preview hilft uns, die E-Mail im Entwicklungsmodus schnell im Webbrowser anzuzeigen.
1. Fügen Sie „gem 'rails_email_preview', '~> 0.2.29'“ zur Gem-Datei und zur Bundle-Installation hinzu.
2. Führen Sie „rails g rails_email_preview:install“ aus. Dadurch wird ein Initialisierer im Konfigurationsordner erstellt und Routen hinzugefügt.
3. Führen Sie „Rails g Rails_email_preview:update_previews“ aus. Dadurch wird der Ordner „mailer_previews“ im App-Verzeichnis erstellt.
Der Generator fügt jeder Ihrer E-Mails einen Stub hinzu und füllt den Stub dann mit Scheindaten.
Ex:
Klasse UserMailerPreview
Auf jeden Fall eine Einladung
UserMailer.invitation mock_user('Alice'), mock_user('Bob')
Endeauf jeden Fall willkommen
UserMailer.welcome mock_user
EndePrivat
def mock_user(name = 'Bill Gates')
fake_id User.new(Name: Name, E-Mail: „user#{rand 100}@test.com“)
Endedef fake_id(obj)
obj.define_singleton_method(:id) { 123 + rand(100) }
obj
Ende
Ende
4. Parameter in der Suchabfrage stehen als Instanzvariable für die Vorschau der Klasse zur Verfügung.
Beispiel: Wenn wir eine URL wie „/emails/user_mailer_preview-welcome?user_id=1“ haben
@user_id ist in der Willkommensmethode von UserMailerPreview definiert und hilft uns, E-Mails an bestimmte Benutzer zu senden.
Klasse UserMailerPreview
auf jeden Fall willkommen
user = @user_id ? User.find(@user_id): mock_user
UserMailer.welcome(Benutzer)
Ende
Ende
5. So greifen Sie auf REP-URLs zu
Rails_email_preview.rep_root_url
Rails_email_preview.rep_emails_url
Rails_email_preview.rep_email_url('user_mailer-welcome')
6. Wir können E-Mails über REP senden. Dabei werden die Mailer-Einstellungen der Umgebung verwendet. Kommentieren Sie diese Zeile im Initialisierer aus, um das Senden von E-Mails in der Testumgebung zu deaktivieren.
config.enable_send_email = false
Verweise :
1. https://github.com/glebm/rails_email_preview
2. https://richonrails.com/articles/action-mailer-previews-in-ruby-on-rails-4-1
Möchten Sie Ihre App entwickeln lassen? SchienenCarma kann helfen! Schauen Sie sich unser Portfolio an, um zu verstehen, wie wir durch unsere Bereitstellung dazu beitragen, die Form der Softwareindustrie zu verändern Ruby on Rails-Entwickler. Nehmen Sie jetzt Kontakt mit uns auf!