Ruby on Rails: как преобразовать запись базы данных с атрибутами внутри в понятный человеку формат? - PullRequest
1 голос
/ 29 сентября 2010

Я использую плагин act_as_auditable, и атрибут revisions дает мне этот фрагмент текста (т. Е. В столбце "revisions"; т.е. @ audit.revisions)

--- 
user_id: 2
kind: French
name: Delicious Pies

Я пытаюсь преобразовать этот текст в понятный человеку формат для отображения деталей аудита. Например, я хочу преобразовать вышеуказанный кусок (т.е. @ audit.revisions) в нечто вроде:

Created "Delicious Pies", which is a French cuisine.

Я думаю о чем-то вроде:

Created "<%= @audit.revisions[:name] %>", which is a <%= @audit.revisions[:kind] %> cusine.

Конечно, это кажется неправильным. Есть идеи, как правильно это сделать?

1 Ответ

4 голосов
/ 29 сентября 2010

Если ваш столбец ревизии является строкой, то вы можете преобразовать любой YAML в хеш с помощью:

y = YAML.load(@audit.revisions)
y["kind"] # => "French"

update : я сказал "хеш" выше, но он будет преобразован втип, который подходит для данного YAML.Так что это может быть массив или объект.Но в твоем случае это будет хеш.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...