Rails字段枚举as_json:获取整数而不是字符串

时间:2015-02-07 19:50:37

标签: ruby-on-rails

在我的项目中,我有一个带有性别枚举的用户模型:

class User < ActiveRecord::Base
   enum gender: [:female, :male]
end

当我在我的某个对象上调用as_json时,我会收到字符串&#34; female&#34;或者&#34;男性&#34;。有没有办法渲染整数值而不是字符串?

2 个答案:

答案 0 :(得分:-2)

我会尝试查看文档

http://edgeapi.rubyonrails.org/classes/ActiveRecord/Enum.html

为此,也许您可​​以使用哈希

class User < ActiveRecord::Base
  enum gender: { female: 0, male: 1 }
end

希望有任何帮助

答案 1 :(得分:-2)

User.genders是枚举和整数值的数组。因此,请使用User.genders[@user.gender].to_json

如果您对默认值to_json不满意,请调查jBuilder以创建您确切的JSON