2017-02-25 75 views
-1

我在aslsx中创建行,现在我想要在现有行中添加单元格。如何在轨道上的ruby中的axlsx行中添加单元格

wb = xlsx_package.workbook 
wb.add_worksheet(name: "Buttons") do |sheet| 

sheet.add_row ['Categories:'] 
@categories.each do |category| 
    // Here I want to add this category name existing row 
end 

如果我错了请纠正我也

回答

1

好吧,如果你想添加的所有类别,同一行,这应该工作:

p = Axlsx::Package.new 
wb = p.workbook 

categories = ['Categories:'] + @categories.pluck(:name) 

wb.add_worksheet(name: "Buttons") do |sheet| 
    sheet.add_row categories 
end 

我假设你的分类模型有属性称为名称,如果不是,只需将:name更改为更合适的内容即可。方法add_row接收一个包含值的数组并且写入从数组到当前行的所有内容,因此您需要首先使用类别名称填充数组。然后,您可以将数组传递给方法add_row,它将用excel填充整个行。

Here你可以找到更多关于pluck的方法。或者只是在rails控制台中,尝试Category.all.pluck(:id),您将得到一个填充了所有类别ID的数组。

相关问题