Я использую рубиновый камень: prawn и расширение prawn-table, чтобы обеспечить креветку функциональность создания таблиц.Таблица креветок: Итерация через активное связывание записей Объект для заполнения
Основы создания таблицы с креветкой displayed here прямо вперед, когда у вас есть статические данные:
# This works. Easy because it is static data
def prepare_for_print
pdf = Prawn::Document.new
pdf.font_size 11
pdf.font "Times-Roman"
pdf.table([ ["short", "short", "loooooooooooooooooooong "*30],
["short", "loooooooooooooooooooong "*15, "short"],
["loooooooooooooooooooong "*10, "short", "short"] ])
return pdf
end
Великого. Это было неплохо. Но теперь я хочу перебирать активного объекта запись отношения, но моя попытка просто не работает:
def prepare_for_print
pdf = Prawn::Document.new
pdf.font_size 11
pdf.font "Times-Roman"
calls_by_disability.each do |disability|
pdf.text "#{disability}", style: :bold, color: "001133"
pdf.table([ ["Call ID", "Date", "County", "Service Category", "Service", "Notes"],
disability.calls.each do |call|
["hello", "world", "foo", "bar", "bazz", "adsfsa"],
end
])
end
return pdf
end
Проблема заключается в переборе связанных вызовов:
disability.calls.each do |call|
["hello", "world", "foo", "bar", "bazz", "adsfsa"],
end
Любые советы приветствуются. Благодаря!
С вашим предлагаемым ответом я получаю эту ошибку: «данные должны быть двухмерным массивом объектов с ячейками» – Neil
как насчет редактирования? Я не могу проверить это, я только пытаюсь помочь, потому что я провел несколько часов с креветками сегодня на работе, и это боль в ** :) См. Редактирование и попытайтесь следовать за ошибкой, они довольно описательны , –
Я думаю, что я действительно очень благодарен вашей помощи. Проблема в том, что 'table_data' имеет дополнительную' [] 'упаковку данных по какой-то причине для каждого вызова. Я попытался взять «карту» и заменить ее на «.each», но это не сделало этого. – Neil