From your example
class User < ActiveRecord::Base
as_enum :gender, female: 1, male: 0
end
# expected
user.gender == :female
user.genders.key(1) == :female
# but
user.genders.keys == ["male", "female"]
ie. the enumerated values always appear as symbols everywhere except when calling keys.