ruby-on-rails – rails 3.1生成CSV文件
发布时间:2020-12-17 04:34:35 所属栏目:百科 来源:网络整理
导读:我能够将表数据导出到CSV文件,但每条记录后都有一个空行.为什么以及如何修复它? 在index.html.erb中 %= link_to "Export to csv",request.parameters.merge({:format = :csv})% 在index.csv.erb中 %- headers = ["Id","Name"] -%%= CSV.generate_line heade
我能够将表数据导出到CSV文件,但每条记录后都有一个空行.为什么以及如何修复它?
在index.html.erb中 <%= link_to "Export to csv",request.parameters.merge({:format => :csv})%> 在index.csv.erb中 <%- headers = ["Id","Name"] -%> <%= CSV.generate_line headers %> <%- @customers.each do |n| -%> <%- row = [ n.id,n.fname ] -%> <%= CSV.generate_line row %> <%- end -%> 解决方法
CSV.generate_line将新行字符添加到它生成的行的末尾,但<%=%>也是如此.所以你得到两条新线.
要从erb表达式输出中抑制换行符,请使用以下语法:<%= - %> 所以: <%- headers = ["Id","Name"] -%> <%= CSV.generate_line headers -%> <%- @customers.each do |n| -%> <%- row = [ n.id,n.fname ] -%> <%= CSV.generate_line row -%> <%- end -%> 接受的答案留在erb生成的新行中但是从CSV.generate_line中抑制了新行,我认为这不是最好的方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |