【问题标题】:Rails: Use more than 1 col_sepRails:使用超过 1 个 col_sep
【发布时间】:2016-01-12 15:50:27
【问题描述】:

this documentation 中所述,我可以更改标准 col_sep,例如从“,”到“;”。

如何更改它以同时使用“,”和“;”作为 col_sep。

我的实际代码:

def process!
  @imported_count = 0
  CSV.foreach(file.path, headers: true, header_converters: :symbol, col_sep: ",") do |row|
    order = Order.assign_from_row(row)
    if order.save
      @imported_count += 1
    else
      errors.add :base, "Line #{$.} - #{order.errors.full_messages.join(",")}"
    end
  end
end

提前致谢!

【问题讨论】:

标签: ruby-on-rails


【解决方案1】:

col_sep 只接受一个值。您可以在此处查看如何使用它的示例:

http://rxr.whitequark.org/mri/source/lib/csv.rb (第 1654 和 1803 行是几个例子)

一种解决方法是使用类似 gsub 的方法将一个分隔符值的所有实例替换为另一个。不是您希望的灵丹妙药,但根据您的要求,它可以解决问题!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-08
    • 1970-01-01
    • 1970-01-01
    • 2013-04-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多