L'invio di un'e-mail da un'applicazione tramite un ambiente di sviluppo o di gestione temporanea può essere complicato, soprattutto quando si desidera visualizzare l'anteprima dell'e-mail prima di premere il pulsante di invio. Con la gemma 'mail_view, puoi facilmente visualizzare in anteprima le email direttamente dal tuo ambiente di sviluppo. Visualizzare l'anteprima della posta è importante per garantire di inviare l'e-mail giusta e alla persona giusta.
Non inviare mai più una mail al buio con la gemma 'mail_view! Scopri di più di seguito su come può essere implementato nella tua applicazione durante la fase di sviluppo.
Rails Email Preview ci aiuta a visualizzare rapidamente l'e-mail nel browser Web in modalità di sviluppo.
1. Aggiungere "gem 'rails_email_preview', '~> 0.2.29' " al file gem e installare il bundle.
2. Esegui "rails g rails_email_preview:install" per creare un inizializzatore nella cartella di configurazione e aggiungere percorsi.
3. Esegui "rails g rails_email_preview:update_previews" questa cartella mailer_previews nella directory dell'app.
Il generatore aggiungerà uno stub a ciascuna delle tue email, quindi popolerà lo stub con dati fittizi.
Ex:
classe UserMailerPreview
invito definitivo
UserMailer.invitation mock_user('Alice'), mock_user('Bob')
FINEsicuramente benvenuto
UserMailer.benvenuto mock_user
FINEprivato
def utente_mock(nome = 'Bill Gates')
fake_id Utente.nuovo(nome: nome, email: "utente#{rand 100}@test.com")
FINEdef ID_falso(oggetto)
obj.define_singleton_method(:id) { 123 + rand(100) }
ogg
FINE
FINE
4. I parametri nella query di ricerca saranno disponibili come variabile di istanza per visualizzare l'anteprima della classe.
Esempio: se abbiamo un URL come “/emails/user_mailer_preview-welcome?user_id=1”
@user_id è definito nel metodo di benvenuto di UserMailerPreview e ci aiuta a inviare posta a un utente specifico.
classe UserMailerPreview
sicuramente benvenuto
utente = @id_utente ? User.find(@user_id): mock_user
UserMailer.benvenuto(utente)
FINE
FINE
5. Per accedere all'URL REP in questo modo
rails_email_preview.rep_root_url
rails_email_preview.rep_emails_url
rails_email_preview.rep_email_url('user_mailer-benvenuto')
6. Possiamo inviare e-mail tramite REP, questo utilizzerà le impostazioni del mailer dell'ambiente. Decommentare questa riga nell'inizializzatore per disabilitare l'invio di posta nell'ambiente di test.
config.enable_send_email = false
Riferimenti :
1. https://github.com/glebm/rails_email_preview
2. https://richonrails.com/articles/action-mailer-previews-in-ruby-on-rails-4-1
Desideri sviluppare la tua app? RailsCarma può aiutare! Dai un'occhiata al nostro portafoglio per capire come stiamo contribuendo a cambiare la forma dell'industria del software fornendo Sviluppatore di Ruby on Rails. Mettiti in contatto con noi adesso!