roo gem 文件 .xlsx 不存在

roo gem file .xlsx does not exist

我使用 cloud9 ide 在 rails 上使用 ruby!

我正在测试 gem 'roo' 以将 excel 文件带到我的数据库中。在我这样做之前,我想测试这个 gem 工作。

gem 文件:https://github.com/roo-rb/roo
但是带文件有问题!

报错信息是这样的

MersmapController#index

IOError

文件../assets/test.xlsx不存在


这是我的代码!

require 'roo'

class MersmapController < ApplicationController         


  def index
      xlsx = Roo::Excelx.new("../assets/test.xlsx")
      @show = xlsx.info
  end
end

并在 index.erb

<h1> <%= @show %> </h1>



我使用我的 "images.jpg"(图像文件)测试此路径

当我在 index.erb 中写入图像文件的路径时,它确实有效!!

我试过了

xlsx = Roo::Excelx.new("../assets/excel/test.xlsx")

xlsx = Roo::Excelx.new("../../app/assets/test.xlsx")

xlsx = Roo::Excelx.new("../../app/assets/excel/test.xlsx")

…… 所有的东西!!

但最后我无法弄清楚问题是什么...... 如果你能帮助我,我将不胜感激!!

您可以使用Rails.root获取文件的路径名:

xlsx = Roo::Excelx.new(Rails.root.join('app', 'assets', 'excel', 'test.xlsx'))

我记得有一次发生在我身上,看看这是否解决了你的问题:

xlsx = Roo::Excelx.new(url_to_file, file_warning: :ignore)