2012-07-17 16 views
7
 render :pdf => "file_name", 
        :layout  => 'pdf.html.erb', 
        :template => 'transactions/show.pdf.erb', 
         :wkhtmltopdf => WICKED_PDF_BIN, 
         :show_as_html => true, 
        :layout => 'pdf.html.erb', 
        :header => {:html => { :template => 'shared/header.pdf.erb'}} 

पीडीएफ ठीक उत्पन्न हुआ है, दुर्भाग्यवश मुझे हेडर नहीं दिखाई देता है। मैं मुख्य लेआउट में हेडर चिपक सकता हूं और यह भी ठीक काम करता है। ऐसा लगता है कि उपरोक्त शीर्षलेख रेखा संसाधित नहीं की जा रही है। फ़ाइल नाम 'header.pdf.erb' कोई फर्क नहीं पड़ता। मैं इसे उस फाइल पर इंगित कर सकता हूं जो अस्तित्व में नहीं है और इससे कोई त्रुटि नहीं आती है।evil_pdf हेडर प्रतिपादन नहीं कर रहा है

यह, मैक ओएस है 3.2.1 रेल, रूबी 1.9

+0

आपके कंसोल लॉग में wkhtmltopdf के लिए कमांड लाइन क्या है? क्या आप कंसोल में pdf.html.erb' के भीतर 'रेंडर साझा/header.pdf.erb' जैसी कुछ भी देखते हैं? – HargrimmTheBleak

+0

सुनिश्चित करें कि आप क्यूटी के साथ संकलित wkhtmltopdf का एक संस्करण उपयोग कर रहे हैं, और शायद सीएसएस के साथ अपने बॉडी मार्जिन और पैडिंग को समाप्त करने का प्रयास करें (जो हेडर और पाद लेख ग्रहण कर सकता है) – Unixmonkey

+1

मेरे पास पाद लेख के साथ एक ही समस्या थी, समस्या मेरी wkhtmltopdf स्थापना थी: http://stackoverflow.com/questions/12181019/wicked-pdf-footer-not-working/12334202#12334202 – Ginty

उत्तर

3

आप बस एक स्ट्रिंग के रूप टेम्पलेट प्रस्तुत करना और शीर्ष लेख की सामग्री के लिए निर्दिष्ट करने के लिए कर सकते हैं। इसे आज़माएं:

header: { 
    content: render_to_string(template: 'header.pdf.haml') 
} 

यह मेरे लिए अच्छा काम करता है।

+1

यह मुझे देता है: 'config/startizers/evil_pdf.rb: 46: '' में : मुख्य के लिए अपरिभाषित विधि 'render_to_string': ऑब्जेक्ट (NoMethodError) 'मैं रेल का उपयोग कर रहा हूं 3.2.16 –

+0

' render_to_string' [actionController] (http://apidock.com/rails/ActionController/Base/render_to_string) पर एक विधि है । यह तब तक परिभाषित किया जाना चाहिए जब तक कि आप एक नियंत्रक के बाहर नहीं हैं। – ggentzke

संबंधित मुद्दे