Генератор JSON в Ruby

Ввод JSON

Загрузка редактора…

Сгенерированный Ruby

Configuration

Введите JSON, чтобы сгенерировать Ruby‑классы

Аккуратные Ruby‑классы с поддержкой фреймворков

Как конвертировать JSON в Ruby – пошаговое руководство

Используйте этот генератор JSON to Ruby для создания классов/структур Ruby из образцов JSON для приложений Rails и сервисов Ruby.

  1. Шаг 1. Вставьте образец JSON.

    • Вставьте типичный объект или массив JSON в левый редактор.
    • Включите вложенные объекты, массивы и поля, допускающие значение NULL, чтобы типы выводились правильно.
    • Используйте Import для загрузки JSON из файла, URL-адреса или образца данных.
  2. Шаг 2. Выберите параметры модели Ruby.

    • Выберите корень Class Name и решите, нужны ли вам простые классы или объекты в стиле Struct.
    • Просмотрите, как обрабатываются необязательные поля (значения, допускающие значение Nilable).
    • Подтвердите, как вложенные объекты становятся вложенными классами Ruby для ясности и повторного использования.
  3. Шаг 3. Просмотрите сгенерированный код.

    • Проверьте имена полей, типы и способ моделирования массивов/объектов.
    • Настройте такие параметры, как Root Type Name, обработку значений NULL и платформы, если они доступны.
    • Если поле выведено неправильно, измените образец JSON и выполните его повторное создание.
  4. Шаг 4 – Используйте модели в Ruby

    • Скопируйте созданные классы в свое приложение (например, app/models или lib).
    • Анализируйте JSON и сопоставляйте хэши с объектами вашей модели.
    • Проверьте необходимые ключи, прежде чем использовать их в бизнес-логике.
  5. Шаг 5 – Скопируйте или загрузите

    • Скопируйте выходные данные в свой проект или загрузите их в виде файла.
    • Запустите форматтер/линтер в соответствии со стилем вашего кода.
    • Добавьте библиотеки синтаксического анализа/сериализации JSON, если они требуются для вашего языка.

Советы

  • Сохраняйте инициализацию явной, чтобы избежать ошибок с нулевым значением.
  • По возможности отдавайте предпочтение отдельным типам для вложенных объектов вместо нетипизированных хэшей.
  • Используйте схему JSON, когда вам нужны общие контракты между службами.
Пример вывода (упрощенный)
# Ввод JSON
{
  "id": 123,
  "name": "Maeve Winters",
  "email": "[email protected]",
  "active": true,
  "roles": ["admin", "editor"],
  "metadata": { "plan": "pro" },
  "createdAt": "2024-03-01T10:15:00Z",
  "score": 99.5,
  "notes": null
}

# Generated Ruby models (simplified)
class Metadata
  attr_accessor :plan
end

class Root
  attr_accessor :id, :name, :email, :active, :roles, :metadata, :createdAt, :score, :notes
end

Сопутствующие инструменты JSON и Ruby

Узнайте больше об инструментах JSON и схемы, которые отлично работают вместе с генератором JSON в Ruby.

Часто задаваемые вопросы

Какие возможности Ruby поддерживаются?

Генератор создаёт Ruby‑классы с attr_accessor, поддерживает ActiveModel‑сериализацию и следует Ruby‑конвенциям с корректной структурой модулей.

Можно ли генерировать классы для ActiveModel?

Да! Выберите «ActiveModel», чтобы получить классы с поддержкой ActiveModel::Serialization для автоматической JSON‑сериализации в Rails‑проектах.

Как работает интеграция Dry‑Struct?

При выборе Dry‑Struct генератор создаёт неизменяемые struct‑классы с проверкой типов и coercion с помощью gem dry-struct.

Что с Ruby‑стилем и конвенциями?

Код следует стандартам: snake_case для методов и переменных, CamelCase для классов и отступы 2 пробела по умолчанию.

Генератор JSON в Ruby | JSONSwiss