У меня в Ruby есть объект Post.
Я хотел бы преобразовать сообщение в json, но также хочу включить имя пользователя, который опубликовал сообщение. Дело в том, что user_name отсутствует в объекте Post, но идентификатор пользователя есть.
Так что я действительно хочу что-то вроде этого
{name:"My Post", body:"My post data", user_name:"jhonny"}
Когда я делаю to_json для объекта Post, я получаю следующее
{name:"My Post", body:"My post data"}
Но я также хочу добавить user_name:"jhonny"
часть также к нему. Я знаю, что могу сделать это хешем, а затем сделать to_json
для хеша, но я не хочу делать хеш для всех значений публикации вручную, так как существует много атрибутов для публикации. Я бы предпочел использовать функцию слияния хешей, чтобы добавить дополнительный атрибут к хешу, а затем вызвать для него json.
Есть ли способ сделать объект быстрого хеша для класса ruby? Любые идеи будут приветствоваться.
Что-то вроде
my_post.hash.merge{:user_name => "jhonny"}.to_json
Приветствие.