method
arel_column
v8.1.1 -
Show latest stable
- Class:
ActiveRecord::QueryMethods
arel_column(field)private
No documentation available.
# File activerecord/lib/active_record/relation/query_methods.rb, line 1986
def arel_column(field)
field = field.name if is_symbol = field.is_a?(Symbol)
field = model.attribute_aliases[field] || field
from = from_clause.name || from_clause.value
if model.columns_hash.key?(field) && (!from || table_name_matches?(from))
table[field]
elsif /\A(?<table>(?:\w+\.)?\w+)\.(?<column>\w+)\z/ =~ field
arel_column_with_table(table, column)
elsif block_given?
yield field
elsif Arel.arel_node?(field)
field
elsif is_symbol
Arel.sql(model.adapter_class.quote_table_name(field), retryable: true)
else
Arel.sql(field)
end
end