module ActsAsAliased::ClassMethods
Public Instance Methods
acts_as_aliased(options = {})
click to toggle source
# File lib/acts_as_aliased.rb, line 14 def acts_as_aliased options = {} has_many :aliases, as: :aliased, class_name: ::ActsAsAliased::Alias cattr_accessor :associations cattr_accessor :column self.associations = options[:associations] || [] self.column = options[:column] || 'name' class_eval <<-EOV include ActsAsAliased::InstanceMethods def self.lookup(value) return nil if value.blank? self.send("find_by_#{column}", value) || Alias.where(["aliased_type = ? AND name = ?", self.to_s, value]).first.try(:aliased) end EOV end