2010-01-13 7 views
0

J'utilise Prawnto pour générer des fichiers PDF dans mon application Rails. Je veux trois options spécifiques définies pour mes fichiers PDF:Problèmes avec les options Prawnto

  • Je ne veux pas que ça commence par une page blanche
  • Je veux qu'il télécharger directement (non-ligne)
  • Je veux spécifier le nom de fichier

Voici ma méthode de commande:

def print 
    @purchase = Purchase.find(params[:id]) 
    prawnto :prawn=>{:skip_page_creation=>true}, :inline=>false, :filename=>@purchase.deal.name + "-" + @purchase.customer.name+".pdf" 
end 

Sans l'option: skip_page_creation, les deux autres options (en ligne et nom de fichier) fonctionne bien. Mais quand j'ajoute l'option skip_page_creation, elle va en ligne avec un nom de fichier par défaut. Et bien sûr, si je supprime skip_page_creation, j'obtiens un joli PDF téléchargé avec une première page blanche.

Les documents de cette bibliothèque laissent à désirer, mais est-ce que quelqu'un peut me diriger dans la bonne direction?

À la votre!

Aaron.

+0

Ceci est étrange, mais il semble que le changement de l'ordre de mes arguments a fait tout fonctionner: crawl: inline => false,: nom de fichier => @ purchase.deal.name + "-" + @ purchase.customer .name + ". pdf",: crevette => {: skip_page_creation => true} Les choses fonctionnent bien maintenant ... –

Répondre

0

Je viens d'essayer en changeant un de mes exemples inline qui travaillaient ok:

module SharedPdfs  
    def show 
    prawnto :prawn => {:skip_page_creation=>true}, :inline => false, :filename => "results_pdf.pdf" 
    render :template => '/results/show' 
    end 
end 

jeté un coup d'œil à la source de prawnto et il doit ramasser votre options de crevettes ne sais pas pourquoi il n'est pas mais au moins vous l'avez pour l'instant.