ruby-on-rails - rails 3.1 生成 CSV 文件

标签 ruby-on-rails ruby-on-rails-3 csv ruby-on-rails-3.1

我能够将表数据导出到 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 的新行我认为这不是最好的方法。

关于ruby-on-rails - rails 3.1 生成 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7812231/

相关文章:

ruby-on-rails - 删除嵌套属性时不允许的属性 _destroy

ruby-on-rails - 无法在 Rails 中更新 Action Text Rich Text

ruby-on-rails - Rails 3 中的 rdiscount + haml 问题

windows - 将具有属性的目录批处理到 csv

PHPExcel - 将 4 个 CSV 文件读取到一个带有 4 个电子表格的工作簿中

mysql - 为什么我的 Rails 对象/模型中的日期字段评估为零,而我可以清楚地看到它们不是?

ruby-on-rails - Ruby on Rails 偷偷地将嵌套的哈希键从符号更改为字符串

ruby-on-rails - 为什么我在添加 Refinery CMS 后尝试播种时收到 "uninitialized constant RefineryPage"

ruby-on-rails - 测试中的 RSpec 路由错误但应用程序中没有

java - 如何在java中对csv文件的内容进行排序