我正在使用Active Storage上传CSV文件,然后读取该文件以更新数据库中的值。我已经设置了一个基本的上传文件类来做到这一点;
class VendorFile < ApplicationRecord
has_one_attached :vendor_upload_file
validate :acceptable_file
end
我使用这样的Rails 6打开方法打开CSV文件;
self.vendor_upload_file.open do |file|
CSV.foreach(file) do |row|
do some processing....
end
end
这非常适合处理整个文件。问题是在处理之前,我想打开文件,只是阅读第一行以确保文件是正确的格式。如果文件存储在Active Storage中,我找不到打开文件并仅读取第一行的方法。有人知道这样做的方法吗?谢谢!
怎么样?
headers = self.vendor_upload_file.open(&:first).parse_csv