Activeadmin可以按多列排序 [英] Activeadmin sortable by multiple columns

查看:167
本文介绍了Activeadmin可以按多列排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以使用多列对 activeadmin 表进行排序?



我发现问题现在说这是不可能的。但是我想知道是否有人已经实现了这样的功能?

解决方案

我遇到过同样的问题。通过源代码进行判断功能不支持

  def sort_order(chain)
params [:order] || = active_admin_config.sort_order
if params [:order]&& params [:order] =〜/^([\w\_\.]+)_(desc|asc)$/
column = $ 1
order = $ 2
table = active_admin_config.resource_table_name
table_column =(column =〜/ \./)?列:
#{table}。#{active_admin_config.resource_quoted_column_name(column)}

chain.reorder(#{table_column}#{order})
else
chain#只是返回连锁
结束
结束

但是 猴子补丁解决方案。


Is there any possibility to sort activeadmin table using multiple columns?

I've found an issue that says it is impossible now. But I wonder if anyone has implemented such functionality?

解决方案

I've faced same issue. Judging by source code this feature isn't supported

    def sort_order(chain)
      params[:order] ||= active_admin_config.sort_order
      if params[:order] && params[:order] =~ /^([\w\_\.]+)_(desc|asc)$/
        column = $1
        order  = $2
        table  = active_admin_config.resource_table_name
        table_column = (column =~ /\./) ? column :
          "#{table}.#{active_admin_config.resource_quoted_column_name(column)}"

        chain.reorder("#{table_column} #{order}")
      else
        chain # just return the chain
      end
    end

But there is monkey patch solution.

这篇关于Activeadmin可以按多列排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆