Я учусь анализировать и генерировать JSON с помощью драгоценного камня JSON. Я легко могу создать хэш данных и сгенерировать их в JSON; тем не менее, у меня возникает головокружение, когда дело доходит до того, чтобы взять экземпляр класса (например, экземпляр Person) и поместить все его переменные экземпляра в хэш для преобразования в JSON.
Это пример, которым я являюсь возникли проблемы с:
require "json"
class Person
def initialize(name, age, address)
@name = name
@age = age
@address = address
end
def to_json
end
end
p = Person.new('John Doe', 46, "123 Elm Street")
p.to_json
Я хочу создать метод .to_json
, чтобы я мог взять объект человека и преобразовать все его переменные экземпляра в JSON. Я думаю, что мне нужно взять все переменные экземпляра Person, поместить их в хэш, а затем вызвать JSON.generate (hash)
. Мне сейчас не терпится узнать, как это сделать. Может ли кто-нибудь помочь мне завершить метод to_json
или, возможно, предложить лучший способ его реализации? Спасибо!