Rails / Ruby: Comment obtenir du texte HTML pour Mail

Dans Rails, la classe Mailer, qui hérite d'ActionMailer :: Base, utilise une méthode appelée «mail» pour créer un objet de messagerie. L'appel de la méthode delivery sur l'objet mail de valeur de retour enverra le mail.

Obtenir du HTML sous forme de texte

Pour obtenir le corps de cet e-mail HTML sous forme de texte, appelez la méthode comme suit:

mail.html_part.body.to_s

Ce html_part est défini dans le mail Gem utilisé par Rails.

2020-11-Code à partir du 14


    # Accessor for html_part
    def html_part(&block)
      if block_given?
        self.html_part = Mail::Part.new(:content_type => 'text/html', &block)
      else
        @html_part || find_first_mime_type('text/html')
      end
    end

Obtenez le corps du texte brut

Vous pouvez utiliser text_part pour l'obtenir en texte brut.

mail.text_part.body.to_s

Jusqu'à .body retournera une instance de la classe Body.

Relation

Cet article décrit comment obtenir le corps à partir de la valeur de retour de la méthode de messagerie d'ActionMailer. Si vous souhaitez obtenir le texte après l'avoir envoyé, l'article suivant vous sera utile.

Recommended Posts

Rails / Ruby: Comment obtenir du texte HTML pour Mail
Comment utiliser Ruby on Rails
[Ruby] Comment utiliser slice pour les débutants
[Ruby on Rails] Comment utiliser redirect_to
[Pour les débutants] Comment obtenir le nom de la ligne de chemin de fer différée Ruby
[Ruby on Rails] Comment éviter de créer des routes inutiles pour concevoir
[Pour les débutants Rails] Résumé de l'utilisation de RSpec (obtenir un aperçu)
[Rails] Comment implémenter un test unitaire d'un modèle
[Rails] Comment émettre des messages de réussite et d'erreur
Comment implémenter la pagination dans GraphQL (pour ruby)
Comment écrire des rails
Comment désinstaller Rails
[Ruby on Rails] Comment écrire enum en japonais
[Ruby on Rails] Comment changer le nom de la colonne
[Ruby On Rails] Comment réinitialiser DB dans Heroku
[Rails] Comment obtenir le contenu des paramètres forts
(Ruby on Rails6) Comment créer un modèle et une table
[Ruby on Rails] Comment implémenter la fonction de balisage / recherche incrémentielle pour les articles (sans gemme)
Explication de Ruby on rails pour les débutants ④ ~ À propos des règles de dénomination et comment utiliser form_Tag ~
[rails] Comment publier des images
[Rails] Comment utiliser enum
Comment utiliser le retour Ruby
[Rails] Comment utiliser enum
Comment lire les itinéraires des rails
[Ruby] Comment commenter
Comment utiliser la jonction de rails
Ruby: Comment utiliser les cookies
Comment terminer le serveur de rails
Comment écrire des graines de Rails
[Rails] Comment utiliser la validation
[Rails] Comment désactiver les turbolinks
[Rails] Comment utiliser authenticate_user!
[Rails] Comment mettre en œuvre le scraping
[Rails] Comment faire des graines
Comment écrire le routage Rails
[Rails] Comment installer simple_calendar
[Rails] Comment installer reCAPTCHA
[Rails] Comment utiliser Scope
Comment afficher des graphiques dans Ruby on Rails (LazyHighChart)
[Rails] Comment utiliser la "devise" des gemmes
Comment utiliser HttpClient de Java (Get)
[Rails] Comment utiliser l'appareil (Remarque)