2012-04-08 3 views
6

Hallo ich bin ein bisschen fest mit diesem. was ich herausfinden werde, ist, dass ich eine Datei namens ticket_pdf.rb in lib/directory habe, die ich einige Rechnung PDFs für meine app generieren möchte. Ich möchte eine Funktion dieser Klasse aufrufen, um die PDFs aus meinen Controller-Aktionen zu generieren.Aufruf von Klassen in/lib von Controller-Aktionen

die ticket_pdf.rb sieht aus wie dieses

class TicketPDF 
    def generate_pdf (purchase) 
    puts "Ticket ID = #{purchase.ID}" 
    end 
end 

in einem Controller I Aktion ich dies tun.

class Customer::MyController < ApplicationController 
    require 'ticket_pdf' 

    def show 
    ticket = TicketPDF.new 
    end 
end 

Wenn ich versuche, ein Objekt wie dieses zu erstellen, gebe ich einen 500 Fehler wie diesen.

uninitialized constant Customer::MyController::TicketPDF 

was mache ich hier falsch?

Antwort

11

Versuchen

ticket = ::TicketPDF.new 

Sie haben TicketPDF in der obersten Ebene Namespace erstellt.

+0

brilliant danke für die schnelle antwort – nivanka