class SecretAgentAlias < ActiveRecord::Base include FakeId attr_accessible :document_type_id fake_ids_for :document_type, { :drivers_license => 1, :passport => 2 } end
alias = SecretAgentAlias.new(:document_type_id = 1) alias.document_type => :drivers_license alias.document_type = :passport alias.document_type => :passport alias.passport? alias.passport => true alias.drivers_license? alias.drivers_license => false
SecretAgentAlias.document_types => [:drivers_license, :passport] SecretAgentAlias.document_type_mappings => {1=>:drivers_license, 2=>:passport} SecretAgentAlias.lookup_document_type(1) => :drivers_license SecretAgentAlias.lookup_document_type(:passport) => 1
SecretAgentAlias.drivers_license SecretAgentAlias.not_passport SecretAgentAlias.document_type_is(:drivers_license) SecretAgentAlias.document_type_is_not(:passport) SecretAgentAlias.document_type_in(:drivers_license, :passport) SecretAgentAlias.document_type_not_in(:drivers_license, :passport)