Handling Enum Queries in API Responses

When using Rails APIs, enums return integers by default. To return human-readable values, you can:

Override as_json Method

class User < ApplicationRecord
  enum :status, { active: 0, inactive: 1, banned: 2 }

  def as_json(options = {})
    super(options).merge(status: status)
  end
end

Now, a JSON response looks like this:

{
  "id": 1,
  "name": "John Doe",
  "status": "active"
}