module Ransack::Nodes::Bindable
def attr
def attr @attr ||= get_arel_attribute end
def bound?
def bound? attr_name.present? && parent.present? end
def get_arel_attribute
def get_arel_attribute if ransacker ransacker.attr_from(self) else get_attribute end end
def get_attribute
def get_attribute if is_alias_attribute? context.table_for(parent)[parent.base_klass.attribute_aliases[attr_name]] else context.table_for(parent)[attr_name] end end
def is_alias_attribute?
def is_alias_attribute? Ransack::SUPPORTS_ATTRIBUTE_ALIAS && parent.base_klass.attribute_aliases.key?(attr_name) end
def klass
def klass @klass ||= context.klassify(parent) end
def ransacker
def ransacker klass._ransackers[attr_name] end
def reset_binding!
def reset_binding! @parent = @attr_name = @attr = @klass = nil end