微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 为什么Figaro gem只有在我使用erb语法时才能工作?

我正在使用 Figaro gem但它只在我访问config / database.yml中的env变量时才有效:

<%= ENV["MysqL_USERNAME"] %>

但不是当我按照文档指定的方式尝试时:

ENV["MysqL_USERNAME"]

要么

figaro.env.MysqL_username

有谁知道为什么会这样?

解决方法

他们的文件是错的.如果要将非静态值插入YAML文件,则必须使用ERB标记. YAML文件通常只是静态文件. Rails通过ERB解析器处理database.yml,这就是使用ERB语法插入值的原因.

换句话说:如果你不使用ERB标签,Rails不知道它是否应该评估你输入的内容,或者它是否应该将其视为静态值.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐