L'envoi d'un e-mail depuis une application via un environnement de développement ou de test peut s'avérer fastidieux, surtout lorsque vous souhaitez prévisualiser l'e-mail avant d'appuyer sur le bouton d'envoi. Avec la gem 'mail_view, vous pouvez facilement prévisualiser les e-mails directement depuis votre environnement de développement. La prévisualisation du courrier est importante pour garantir que vous envoyez le bon courrier électronique et à la bonne personne.
N'envoyez plus jamais de mail dans le noir avec la gemme 'mail_view ! Découvrez ci-dessous comment il peut être implémenté dans votre application pendant la phase de développement.
Rails Email Preview nous aide à visualiser rapidement l'e-mail dans le navigateur Web en mode développement.
1. Ajoutez « gem 'rails_email_preview', '~> 0.2.29' » au fichier gem et à l'installation groupée.
2. Exécutez « rails g rails_email_preview:install », cela crée un initialiseur dans le dossier de configuration et ajoute des routes.
3. Exécutez « rails g rails_email_preview:update_previews » pour créer le dossier mailer_previews dans le répertoire de l'application.
Generator ajoutera un stub à chacun de vos e-mails, puis remplira le stub avec des données fictives.
Ex:
classe UserMailerPreview
invitation définitive
UserMailer.invitation mock_user('Alice'), mock_user('Bob')
finbienvenu
UserMailer.welcome mock_user
finprivé
def mock_user (nom = 'Bill Gates')
fake_id User.new(nom : nom, email : "user#{rand 100}@test.com")
findef faux_id (obj)
obj.define_singleton_method(:id) { 123 + rand(100) }
obj
fin
fin
4. Les paramètres de la requête de recherche seront disponibles en tant que variable d'instance pour prévisualiser la classe.
Ex : si nous avons une URL du type « /emails/user_mailer_preview-welcome?user_id=1 »
@user_id est défini dans la méthode de bienvenue de UserMailerPreview, il nous aide à envoyer du courrier à un utilisateur spécifique.
classe UserMailerPreview
bienvenu
utilisateur = @user_id ? Utilisateur.find (@user_id) : mock_user
UserMailer.welcome(utilisateur)
fin
fin
5. Pour accéder aux URL REP comme ceci
rails_email_preview.rep_root_url
rails_email_preview.rep_emails_url
rails_email_preview.rep_email_url('user_mailer-welcome')
6. Nous pouvons envoyer des e-mails via REP, cela utilisera les paramètres de l'environnement de messagerie. Décommentez cette ligne dans l'initialiseur pour désactiver l'envoi de courrier dans un environnement de test.
config.enable_send_email = faux
Les références :
1. https://github.com/glebm/rails_email_preview
2. https://richonrails.com/articles/action-mailer-previews-in-ruby-on-rails-4-1
Vous cherchez à développer votre application ? RailsCarma peut aider! Consultez notre portfolio pour comprendre comment nous contribuons à changer la forme de l'industrie du logiciel en fournissant Développeur Ruby on Rails. Contactez-nous dès maintenant !