No such file or directory @ rb_sysopen - public/receipts/416981.pdf

Chitra picture Chitra · Feb 9, 2015 · Viewed 26.3k times · Source

Below on line no. 2, I am getting this error:

Errno::ENOENT in OrdersController#print

def generate_receipt(filename = nil, current_user = nil)
    filename ||= "public/receipts/#{id}.pdf"
    Prawn::Document.generate(filename, :page_layout => :portrait, :page_size => 'LETTER', :skip_page_creation => false, :top_margin => 50, :left_margin => 50)do |pdf|

      pdf_receipt_data(pdf, false, 'store_front', current_user)

      pdf.number_pages "<page> of <total>", :at => [0, 0]

    end
end

On my localhost this code is working but on testing env I am getting this error. I am using rails 4.2.
Please help me out.

Answer

Chitra picture Chitra · Feb 9, 2015

After putting a complete path, resolved my problem.

filename ||= "#{Rails.root}/public/receipts/#{id}.pdf"