class ActiveAdmin::OrderClause
Attributes
field[R]
order[R]
Public Class Methods
new(clause)
click to toggle source
# File lib/active_admin/order_clause.rb, line 5 def initialize(clause) clause =~ /^([\w\_\.]+)(->'\w+')?_(desc|asc)$/ @column = $1 @op = $2 @order = $3 @field = [@column, @op].compact.join end
Public Instance Methods
to_sql(active_admin_config)
click to toggle source
# File lib/active_admin/order_clause.rb, line 18 def to_sql(active_admin_config) table = active_admin_config.resource_column_names.include?(@column) ? active_admin_config.resource_table_name : nil table_column = (@column =~ /\./) ? @column : [table, active_admin_config.resource_quoted_column_name(@column)].compact.join(".") [table_column, @op, ' ', @order].compact.join end
valid?()
click to toggle source
# File lib/active_admin/order_clause.rb, line 14 def valid? @field.present? && @order.present? end