gpt4 book ai didi

ruby-on-rails - rails to_xlsx 无法找到 'id' : (all, {} 的所有漏洞(找到 0 个结果,但正在寻找 2 个)

转载 作者:数据小太阳 更新时间:2023-10-29 07:30:00 24 4
gpt4 key购买 nike

我有一个 Rails 应用程序(ruby 2.0.0,Rails 4.2.1)。我想使用 acts_as_xlsx gem 将数据导出到 excel。

这是我的 Controller :

class VulnerabilitiesController < ApplicationController
before_action :set_vulnerability, only: [:show, :edit, :update, :destroy]
# GET /vulnerabilities
# GET /vulnerabilities.json
def index

@vulnerabilities = Vulnerability.all

respond_to do | format |
format.html # index.html.erb
format.json { render :json => @vulnerabilities }
format.xlsx {
send_data @vulnerabilities.to_xlsx.to_stream.read, :filename => 'costings.xlsx', :type => "application/vnd.openxmlformates-officedocument.spreadsheetml.sheet"
}
end
(…)

这是我的模型:

class Vulnerability < ActiveRecord::Base
acts_as_xlsx
end

但是当我点击我的按钮时:

<%= link_to 'Download', url_for(:format=>"xlsx") %>

我有一个错误:

Couldn't find all Vulnerabilities with 'id': (all, {}) (found 0 results, but was looking for 2)

截图:

ActiveRecord RecordNotFound

有人能帮忙吗?

最佳答案

好的,在调查问题后,默认的 acts_as_xlsx gem 似乎已被 rails 4.1+ 破坏。我找到了一个存储库,该存储库对原始 acts_as_xlsx gem 应用了一个补丁来解决这个问题,可以在这里找到:

https://github.com/straydogstudio/acts_as_xlsx

我更新了我的 gem,使其指向新的存储库

gem 'acts_as_xlsx',
:git => "git://github.com/straydogstudio/acts_as_xlsx.git"

或者,您可以下载 zip 并将文件夹解压缩到供应商目录中(将其从 acts_as_xlsx-master 重命名为 acts_as_xlsx)。我就是这样做的,以防修补后的存储库消失。

gem 'acts_as_xlsx',
:path => "vendor/acts_as_xlsx"

感谢 straydogstudio 的补丁。

关于ruby-on-rails - rails to_xlsx 无法找到 'id' : (all, {} 的所有漏洞(找到 0 个结果,但正在寻找 2 个),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30951587/

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