我有一个API方法,该方法返回JSON浮点标识符(3971.0)。尽管实际上应该输出一个整数(3971)。该如何补救?
def index
@users = User.all
render json: @users
end
答案 0 :(得分:1)
如果您仍然想使用ActiveModel :: Serializer解决方案,则可以按照以下方式进行操作
gem 'active_model_serializers'
rails g serializer user
创建一个序列化程序user_serializer.rb
下创建文件app/serializer
attributes :user_id, :login, :name, :spr_work_id
中发回的属性假设您想将:spr_work_id的值修改为整数,然后必须在序列化程序中定义一个方法
def spr_work_id
self.object.spr_work_id.to_i
end
在您的控制器中,将render json: @users
替换为@users.map{|user| UserSerializer.new(user).serializable_hash}