2016-12-20 2 views
1

Ich benutze wicked_pdf gem in einer Rails App und alles funktioniert gut. Das Problem ist, dass ich wicked_pdf.exe installiert habe, da buttom_pdf gem nicht korrekt funktioniert. Es gibt diesen Fehler zurück: Bad wkhtmltopdf Pfad für wicked_pdf (oder ähnlich). Das ist mein wicked_pdf config:Wie benutzt man wicked_pdf gem in Schienen?

WickedPdf.config = { 
    # Path to the wkhtmltopdf executable: This usually isn't needed if using 
    # one of the wkhtmltopdf-binary family of gems. 
    exe_path: 'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe', 
    # or 
    #exe_path: Gem.bin_path('wkhtmltopdf-binary', 'wkhtmltopdf') 

    # Layout file to be used for all PDFs 
    # (but can be overridden in `render :pdf` calls) 
    # layout: 'pdf.html', 
} 

Wie ich das Juwel in der richtigen Art und Weise verwenden kann? Ich muss meine App an einen anderen PC senden und ich möchte die Exe nicht auf jedem PC installieren. Ich möchte keine exe verwenden, ich möchte nur gem verwenden.

Antwort

0

Die Github documentation sagt:

Because wicked_pdf is a wrapper for wkhtmltopdf , you'll need to install that, too.

The simplest way to install all of the binaries (Linux, OSX, Windows) is through the gem wkhtmltopdf-binary. To install that, add a second gem

gem 'wkhtmltopdf-binary'

So scheint es, dass Sie auch diese binäre in Ihrer Anwendung enthalten haben wird. Das Bündeln der Installation sollte das lösen. Sie müssen möglicherweise einige OS-Mapping innerhalb der App erstellen setzen WickedPdf.config (ex/usr/bin/local/wkhtmltopdf vs C: \ Programme \ wkhtmltopdf \ bin \ wkhtmltopdf.exe) für mich

+0

Hallo @ whodini9! Danke, aber es funktioniert immer noch nicht. Ich habe gem 'bottom_pdf', gem 'wkhtmltopdf-binary' mit 'exe_path:' C: \ RailsInstaller \ Ruby2.2.0 \ bin \ wkhtmltopdf '' anstelle von 'exe_path:' C: \ Programme \ wkhtmltopdf \ bin \ installiert. wkhtmltopdf.exe '". Dies ist Laufzeitfehler: wkhtmltopdf ist nicht ausführbar – ValeMarz

+0

Können Sie versuchen, mit der 2. Option: exe_path: Gem.bin_path ('wkhtmltopdf-binary', 'wkhtmltopdf'). Auch im Allgemeinen ist es sicherer File.join ("C: \", "Programme", "# {foo}", bar) – whodini9

+0

immer noch "wkhtmltopdf ist nicht ausführbar" – ValeMarz

0
exe_path: 'C://Program Files/wkhtmltopdf/bin/wkhtmltopdf.exe' 

Das funktionierte