Activeadmin可按多列排序

时间:2012-09-24 12:40:29

标签: ruby-on-rails ruby ruby-on-rails-3 gem activeadmin

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

我发现issue表示现在不可能。但我想知道是否有人实现了这样的功能?

1 个答案:

答案 0 :(得分:4)

我遇到了同样的问题。由source code判断此功能不受支持

    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

但是there is猴子补丁解决方案。