2010-07-27 6 views
3

J'ai une application de commerce électronique. J'utilise Prawn pour générer des factures PDF de commandes. J'utilise une configuration standard de crevettes. Dans views/admin/orders, j'ai un fichier appelé show.pdf.prawn. Lorsque le vendeur consulte une commande dans sa section d'administration, il clique sur un lien qui ouvre la version pdf de la vue Commandes/Vue. Tout cela fonctionne parfaitement.Rails: Envoyer un pdf généré avec crevette à un email envoyé par ActionMailer?

Maintenant, la partie délicate. Quand une commande est terminée, j'envoie un email au vendeur. Ce que je voudrais faire est d'attacher la version pdf de commandes/show à cet email. Est-il possible de faire cela? La documentation sur les pièces jointes est assez limitée et je n'ai pas été en mesure de trouver des ressources qui passent par le flux de travail que je décris.

Toute indication est appréciée.

Répondre

2

Envoi d'une pièce jointe à un e-mail est assez facile avec ActionMailer:

class InvoiceMailer < ActionMailer::Base 

    def email_with_attachment(pdf_invoice) 
    . 
    . 
    . 

    attachment "application/pdf" do |a| 
     a.filename = "some_invoice.pdf" 
     a.body = pdf_invoice 
    end 
    end 

end 

Un problème que vous pourriez avoir avec cela génère le fichier pdf en dehors de la méthode prawnto (lors de l'utilisation du plugin prawnto) - Si C'est le cas, je vous recommande fortement d'utiliser this approach à la place.

Questions connexes