Rails导出CSV忽略空格

Jor*_*dan 4 ruby csv ruby-on-rails

我正在尝试在Rails中创建一个简单的CSV导出.除了删除/存档表项目外,导出工作正常.我猜这是因为出口遇到了空白.

这是有效的:

= link_to transactions_path(format: :csv) do
Run Code Online (Sandbox Code Playgroud)

除非交易中缺少某个项目.

试过这个

= link_to transactions_path(format: :csv,skip_blanks: true) do
Run Code Online (Sandbox Code Playgroud)

但是在调用导出时我仍然得到一个ERR_INVALID_RESPONSE

TransactionController:

respond_to :html, :json, :csv

def index
   @shops = current_user.shops

   respond_with(@shops) do |format|
     format.csv do
       response.headers['Content-Type']              = 'text/csv'
       response.headers['Content-Disposition']       = "attachment; filename=transactions-#{Time.now.strftime('%Y%m%d%H%M')}.csv"

       render inline: @shops.to_csv
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

有什么建议?

小智 6

更改to_csv以传递skip_blanks.

 @shops.to_csv(skip_blanks: true)
Run Code Online (Sandbox Code Playgroud)