【发布时间】:2014-01-28 03:55:20
【问题描述】:
我正在使用 Prawn 0.14.0
我正在使用 rails casts #153 Pdf With Prawn Revised 作为参考来生成包含一些信息和表格的 pdf。但我收到此错误:
LendingsController#show 中的 NoMethodError - 未定义方法 `line_items'
如果我没有在“line_items 方法”中调用方法“line_item_rows”,我可以生成 pdf 并显示一些信息但是如果我尝试填充调用 line_item_rows 的表,则会收到上述错误。
我的 TermPdf 课程中有这个:
class TermPdf < Prawn::Document
def initialize(lending)
super()
@lending_term = lending
line_items
end
def line_items
move_down 20
table line_item_rows
end
def line_item_rows
[["Equipament","Brand","Tipping","Description"]] +
@lending_term.line_items.map do |item|
[
item.equipment.title,
item.equipment.brand.title,
item.equipment.tipping,
item.description
]
end
end
结束
这是 LendingsController 中的 show 方法
def show
@lending = Lending.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.pdf do
pdf = TermPdf.new(@lending)
send_data pdf.render, filename: "Agreement Number #{@lending.id}.pdf",
type: "application/pdf",
disposition: 'inline'
end
format.json { render json: @lending }
end
end
我确实尝试过修复这个错误但没有成功。
【问题讨论】:
标签: ruby-on-rails-3 prawn