Ransack搜索结果 – to_xls?
我有一个搜索范围很好的搜索表单,我想为用户添加一个导出,将结果集的内容发送到XLS文件。
我也成功地实现了to_xls,但是它给了我正在搜索的对象的最大可能范围,而不是视图中显示的过滤结果。
def index @search = Expense.search(params[:q]) @expense_list = @search.result.sort_by(&:expense_date) respond_to do |format| format.html format.xml { render :xml => @expense_list } format.xls { send_data @expense_list.to_xls, :filename => '123.xls'} end end
它与ransack如何使用GET方法有关吗? 任何帮助都会很棒。
谢谢!
我知道这是一个黑客,在花了很多时间没有得到它之后,我还是用它。
">make xls
所以基本上它需要在?之后的搜索路径,然后将它添加到你的model.xls输出路径,然后它的工作原理。 我自己讨厌,必须有更好的方法,但最后期限。
这里有一个很好的链接 。
Ronin为这个相关问题提供了一个简单的解决方案,但使用CSV而不是XLS 。 就我而言,使用Ronin的答案,我只是重写了使用XLS的链接,如下所示
<%= link_to "Download Excel", reports_path(params.merge(format: "xls")) %>
%= link_to "Download Excel", yours_controller_path(params.merge(format: "xls")) %>