我正在使用Rails 3.2.8和activeadmin。我面临的问题是,如果我将exporting的自定义链接设置为pdf(使用Prawn gem)或xml as,
ActiveAdmin.register Project do
index :download_links => [:pdf, :xml]
controller do
...
end
index do
column "Icon" do |project|
# And a couple of other columns.
end
end
我最终丢失了页面上的所有自定义列(例如图标)。
我只想在当前页面上导出为PDF选项,因此我没有使用XML和PDF的下载链接设置全局activeadmin初始化程序。
那么,任何人都可以帮助我弄清楚如何在我当前的activeadmin页面中获得pdf的下载链接。
答案 0 :(得分:2)
@ sanghyun园 这是我的activeadmin控制器,
controller do
def index
index! do |format|
format.html
format.pdf {
pdf = ProjectPdf.new(@projects)
send_data pdf.render, filename: "Project_status.pdf",
disposition: "inline"
}
end
end
end
这是我必须呈现PDF文档的模型,
class ProjectPdf < Prawn::Document
def initialize(projects)
super(top_margin: 50)
text "Summary of Projects" , :style => :bold, :size => 20
proj_array = [[ "Company Name" , "Project Name", "Project State",
"Latest Upload"]]
projects.each do |item|
proj_array << [
item.company.name.nil? ? "" : item.company.name,
item.name,
item.project_state.nil? ? "" : item.project_state.name,
item.updated_at.strftime("%m/%y/%d \n %l:%M %p")
]
end
end
您的approach看起来更简洁,更容易在activeadmin中将页面导出为PDF。