Это действительно начинает сводить меня с ума;Я потратил целых два часа на это, и я просто не могу понять это!Я пытаюсь использовать ERB в файле YAML, чтобы включить маршрут рельсов в файл YAML.Короче говоря, это будет прочитано позже, чтобы создать семантическое меню из файла YAML.Я загружаю файл YAML (с ERB) в инициализатор _load_config.rb
и код, который загружает его, выглядит так:
menu_yml= "#{Rails.root}/config/menu.yml"
config = YAML.load(ERB.new(IO.read(menu_yml)).result)
MENU_CONFIG = config
В файле YAML menu.yml
у меня есть что-то такое:
logged_in:
dashboard:
text: "Dashboard"
url: <%= url_for dashboard_path %>
Проблема в том, что <%= url_for hasboard_path %>
выбрасывает и выдает ошибку:
(erb):4:in `<main>': undefined local variable or method `dashboard_path' for main:Object (NameError)
Из-за большой отладки я предполагаю, что это связано с загрузкой маршрутов после этого инициализатора.Любые предложения относительно того, как это исправить, очень ценятся!
PS Это использует Rails 3.1.rc5