我的 application_helper.rb 文件中有一个 rails 助手,如下所示:
def external_link(name)
url = external_links[name]
if url.blank?
Rails.logger.error "No URL defined for external link [#{name}]!"
return "[URL undefined]"
end
return url
end
'external_links' 变量是一个应该来自外部文件的哈希值。该文件可以是简单的 ruby 哈希或简单的 YML 配置。
也许我遗漏了一些东西——我认为我可以在外部文件中以 ruby 语法定义哈希,并从 environment.rb 中“要求”它,但这不会在帮助程序中公开哈希变量。
如何将 ruby 哈希外部化,使其在应用程序帮助方法中“在范围内”?