Что корректный путь состоит в том, чтобы считать некоторые данные из yaml файла и использовать их на erb странице?

Я использую направляющие для создания веб-сайта.

У меня есть yaml файл contails некоторые цвета, который является config/colors.yml

---
- white
- red
- blue
- yellow
- ...

И, существует erb файл app/views/users/setting.html.erb, которому будут нужны данные в config/colors.yml, и помещенный их в тег.

Я не знаю то, что является корректным способом считать yaml файл. Я могу читать однажды и сохранить их в памяти, или я должен считать ее каждый раз, когда страницу требуют?

8
задан Freewind 8 July 2010 в 13:02
поделиться

2 ответа

Создайте файл инициализатора config/initializers/load_colors.rb с таким содержанием:

COLORS = YAML.load_file("#{Rails.root}/config/colors.yml")

Это загрузит содержимое файла конфигурации в переменную COLORS при запуске приложения Rails. Затем вы сможете обращаться к цветам из любой точки приложения, используя COLORS['section_name']['white'] и т.д. Например, вы можете сделать так:

<h1 style="color: <%= COLORS['h1']['blue'] %>;">Main Heading</h1>

- Хотя использование такого встроенного стиля в шаблоне представления не совсем хорошая практика, но это дает вам представление об использовании.

14
ответ дан 5 December 2019 в 11:22
поделиться

Если цвета никогда не меняются, их можно кэшировать. Следуйте этому руководству DZone .

Третий результат для Google: ruby ​​yaml tutorial .

1
ответ дан 5 December 2019 в 11:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: