2012-04-02 14 views
1

私は即座に請求書のPDFを生成し、モデルを使用して合計を計算しています。たとえば、次のように数値をモデル内の通貨に変換しますか?

def cost 
    jobs.inject(0) do |sum, job|  
     sum + job.cost 
    end 
    end 

私の請求書を生成するとき、私は通貨で次たい:

pdf.text "Invoice Total: $#{number_to_currency(cost)}" 

しかし、私は通貨として計算された値を表示するために、number_to_currencyヘルパーを使用しようとすると、私はエラーを取得します。どのように/これを達成するためのアドバイス?ありがとう。

+0

を、あなたが取得している正確なエラーを投稿することができますか? – Pete

+0

ご使用のサンプル値とエラーメッセージを教えてください。そうでなければ、私たちはあなたを再現することはできません。 – danieltalsky

答えて

2

モデル内からコードを呼び出す場合は、ActiveRecord :: Baseに含まれていないヘルパーを含める必要があります。

だから、あなたはあなたのモデルコードに次のようなものがあるかもしれません:

has_many :jobs 

include ActionView::Helpers 

def cost 
    jobs.inject(0) do |sum, job|  
    sum + job.cost 
    end 
end 

def generate_pdf 
    ... 

pdf.text "Invoice Total: $#{number_to_currency(cost)}" 
end 
+0

素晴らしい、それは素晴らしい仕事。ありがとう、私はそれを感謝します。 – user464180

関連する問題