gpt4 book ai didi

ruby-on-rails - axlsx/axlsx_rails 依赖/冲突问题

转载 作者:行者123 更新时间:2023-12-04 05:34:37 26 4
gpt4 key购买 nike

我正在尝试使用 https://github.com/randym/axlsx 将简单的 Excel 文件下载添加到我的 Rails 应用程序中和 https://github.com/straydogstudio/axlsx_rails但我似乎无法解决依赖关系。

这是我开始使用我的 gem 文件的地方:

gem 'zip-zip'
gem 'axlsx'
gem 'axlsx_rails'
gem 'activeadmin-axlsx'

和一个简单的索引模板:

wb = xlsx_package.workbook
wb.add_worksheet(name: "Areas") do |sheet|
@areas.each do |area|
sheet.add_row [area.name, area.user_id]
end
end

抛出这个:

NoMethodError - undefined method `reopen' for "streamed":String:
rubyzip (1.2.0) lib/zip/output_stream.rb:32:in `initialize'
axlsx (1.3.6) lib/axlsx/package.rb:113:in `to_stream'
app/views/areas/index.xlsx.axlsx:8:in `_app_views_areas_index_xlsx_axlsx___113759396792702403_70279795626520'

这个问题似乎试图解决它:

https://github.com/straydogstudio/axlsx_rails/issues/18

它专注于 axlsx gem 的 v2.x,我似乎也无法尝试加载它:

gem 'zip-zip'
gem 'axlsx', '2.1.0.pre'
gem 'axlsx_rails', '>=0.4'
gem 'activeadmin-axlsx'

但这会破坏 active_admin_import:

Bundler could not find compatible versions for gem "rubyzip":
In Gemfile:
active_admin_import (>= 0) ruby depends on
rubyzip (~> 1.2) ruby

axlsx (= 2.1.0.pre) ruby depends on
rubyzip (~> 1.1.7) ruby

我不明白,就好像我读过这篇文章一样,它们都应该适用于 ruby​​zip v1.2。

它还会破坏 activeadmin-axlsx:

      # patching the index method to allow the xlsx format.
def index_with_xlsx(options={}, &block)
index_without_xlsx(options) do |format| ### wrong number of arguments (1 for 0)
format.xlsx do
xlsx = active_admin_config.xlsx_builder.serialize(collection)
send_data xlsx.to_stream.read, :filename => "#{xlsx_filename}", :type => Mime::Type.lookup_by_extension(:xlsx)
end
end

如果我禁用 active_admin_import axlsx 效果很好,但那很糟糕,因为我失去了灵活的管理导入。

降级似乎有效,但这似乎不是一个长期的解决方案:

gem 'active_admin_import', '2.1.2'

这里有什么想法或建议吗?

最佳答案

Rails 5.2.1/ruby​​ 2.5.0 的工作组合:


gem 'rubyzip', '>= 1.2.1'
gem 'axlsx',git:'https://github.com/randym/axlsx.git',引用:'c8ac844'
gem 'axlsx_rails'
gem 'zip-zip'

关于ruby-on-rails - axlsx/axlsx_rails 依赖/冲突问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38025219/

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