我有一个“.xls”文件,我必须用roo打开它,它必须用rake打开。
这是我的 rake 文件:
require 'roo'
namespace :exel do
task open: :environment do
workbook = Roo::Excel.new("lib/tasks/users.xls")
password_length = 6
password = Devise.friendly_token.first(password_length)
p password
username = "#{workbook.row(5)[0]}#{workbook.row(5)[1]}".slice!(0..7).downcase
p username
test_user = User.create!(email: 'someone@something.com',
f_name: workbook.row(5)[0],
l_name: workbook.row(5)[1],
username: username,
validity_date: workbook.row(5)[3],
:password => password,
:password_confirmation => password)
p test_user
end
end
当我运行 rake:exel 时,我得到一个Ole::Storage::FormatError: OLE2 signature is invalid
错误。从roo gem 站点我知道 roo 需要roo-xls gem,我将它设置在我的 gemfile run bundle install 中,但它没有帮助:(
当我将格式更改为 xlsx 时效果很好,但我必须将其打开为 .xls,我的想法是我没有正确导入 roo-xls gem。
任何帮助,想法都会非常有帮助。