YAML you may have never known
The collection of cool things you can do in YAML.
HTML and multiline strings
Storing HTML in YAML fields in a pretty way has never been as easy.
info: > <h1>Page title</h1> <p>Some paragraph text.</p>
NOTE: You’ll still need to tell Rails it’s safe HTML.
Arrays and hashes
This is useful when you keep the list of options. For example, for the
options: "yes": "Yes" "no": "No" maybe: Maybe
NOTE: YAML interprets “yes” as
true and “no” as
false case-insensitively, that’s why we need to put them in quotes
And this is how you’d use them in Rails:
= select_tag :field, options_for_select(I18n.t('options').invert)
NOTE: We need to invert the Hash so that keys and values land where Rails expects them.
If you don’t care about key-value mapping, options can be stored as:
options: [ "Yes", "No", "Maybe" ]
options: - "Yes" - "No" - Maybe
NOTE: Quotes again.
Using this version in Rails is as easy, no inversion though:
= select_tag :field, options_for_select(I18n.t('options'))