2009-08-31 180 views
0

我正在将数据导出到csv,导轨 - CSV(导出为csv)

导出时,我想按每50条记录拆分,而不是全部导出。

请(即,如果我点击“导出为CSV”应该在单击“导出到CSV”它应该导出接下来的50个记录等出口前50条记录,稍后再)给我提供了一些代码来解决这个问题。

感谢

+1

答案就在这里http://stackoverflow.com/questions/1360682/rails-csvexport-to-csv-loop/1361155#1361155 – ADAM 2009-09-01 08:09:01

+0

多少次,你可以问这个该死的问题,该死的混蛋 – nitecoder 2009-09-03 23:46:48

回答

2

如果不需要分页,您可以尝试AR#find_in_batches

Record.find_in_batches(:batch_size => 50) do |records| 
    export_to_csv(records) # max 50 records 
end 
1
records = ModelClass.find(:limit => 50, ...) 
# convert records to CSV 

# later: 
records = ModelClass.find(:limit => 50, :offset => 50, ...) 
1

看起来像你想分页(你做每页50记录)

有该插件:will_paginate

那么你做的事:Model.paginate:页=> params [:page],::per_page => 50

并且只是每次添加1到您的页面