大虾:如何从一个table开始迭代到header中的一个迭代中?
Prawn: How to iterate from a table inside an iteration in the header?
我将 3 个@course ID 传递给 courses.pdf。
然后 Prawn 生成一个 3 页的 PDF - 一个课程 pr 页。
问题:目前它在所有 3 个页面中打印所有 3 个课程的所有@participants。
它应该只在 table.
中打印当前课程的@participants
我花了几个小时尝试不同的方法,在 Facebook 群组中询问并搜索 Whosebug + Google 寻找解决方案。
class CoursesToPrintPdf < Prawn::Document
def initialize(courses, participations)
@courses = courses
@participations = participations
header
end
def header
@courses.order('day ASC').each do |course|
text_box("#{course.course_day_pdf}",
:align => :right)
text "#{course.round.round_name_simple}"
table deltakere_rows do
self.header = true
end
end
end
def deltakere_rows
[["ID", "Name"]] +
@participations.map do |p|
[p.participant.id, p.participant.full_name]
end
end
end
参与是否包含课程参考?如果是这样,它可能是这样的
def deltakere_rows(course)
[["ID", "Name"]] +
@participations.select do |p|
p.course_id == course.id
end.map do |p|
[p.participant.id, p.participant.full_name]
end
end
并将课程传给deltakere_rows
table deltakere_rows(course) do
self.header = true
end
这可能是我们掌握的信息的想法
我将 3 个@course ID 传递给 courses.pdf。 然后 Prawn 生成一个 3 页的 PDF - 一个课程 pr 页。
问题:目前它在所有 3 个页面中打印所有 3 个课程的所有@participants。
它应该只在 table.
中打印当前课程的@participants我花了几个小时尝试不同的方法,在 Facebook 群组中询问并搜索 Whosebug + Google 寻找解决方案。
class CoursesToPrintPdf < Prawn::Document
def initialize(courses, participations)
@courses = courses
@participations = participations
header
end
def header
@courses.order('day ASC').each do |course|
text_box("#{course.course_day_pdf}",
:align => :right)
text "#{course.round.round_name_simple}"
table deltakere_rows do
self.header = true
end
end
end
def deltakere_rows
[["ID", "Name"]] +
@participations.map do |p|
[p.participant.id, p.participant.full_name]
end
end
end
参与是否包含课程参考?如果是这样,它可能是这样的
def deltakere_rows(course)
[["ID", "Name"]] +
@participations.select do |p|
p.course_id == course.id
end.map do |p|
[p.participant.id, p.participant.full_name]
end
end
并将课程传给deltakere_rows
table deltakere_rows(course) do
self.header = true
end
这可能是我们掌握的信息的想法