gpt4 book ai didi

ruby-on-rails-3 - Rails CSV 将 ""而不是实际引号

转载 作者:行者123 更新时间:2023-12-04 22:07:34 28 4
gpt4 key购买 nike

this question 类似,但我不在整个项目的任何地方使用 html_safe

我在 index.csv.erb 中生成一个 CSV 文件,如下所示:

<%=
response.content_type = 'application/octet-stream'
CSV.generate do |csv|
@persons.each do |person|
csv << [ person[:name], person[:nickname] ]
end
end
%>

问题:如果数据库 (ActiveRecord/MySQL) 中的昵称为 NULL,则 CSV 文件关联元素变为 &quot;&quot; 。我希望 "" ,甚至什么都没有。

结果文件示例:
Nicolas, Nico
Joe, &quot;&quot;

我怎样才能防止这种情况发生?

最佳答案

这里的问题是您没有使用 html_safe 。您的昵称字段为空并在 csv 文件中转换为 "",但 Rails 认为它​​不安全并且 html 转义。

只需在结果上调用 html_safe :

<%=
response.content_type = 'application/octet-stream'
CSV.generate do |csv|
@persons.each do |person|
csv << [ person[:name], person[:nickname] ]
end
end .html_safe
%>

您链接到的解决方案不再适用于 Rails 3,因为默认情况下所有字符串都被认为是不安全的,而 Rails 2 并非如此。

关于ruby-on-rails-3 - Rails CSV 将 ""而不是实际引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7358509/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com