如何知道代码运行在什么环境中?

Iga*_*lSt 11 ruby haml middleman

layout的文件haml,我想确定我们是否在我们的发展和建设环境.我们正在使用米德曼.

我想做这样的事情:

- if environment == 'development'
    / Development Code
    = javascript_include_tag "Dev.js"
Run Code Online (Sandbox Code Playgroud)

我试图访问Ruby的环境变量,并在config.rb文件中定义自定义变量但没有成功.

mat*_*att 29

你几乎做对了 - 你需要检查符号而不是字符串:

- if environment == :development
    / Development Code
    = javascript_include_tag "Dev.js"
Run Code Online (Sandbox Code Playgroud)

Middleman还添加了可能更容易使用的方法development?build?方法:

- if development?
    / Development Code
    = javascript_include_tag "Dev.js"
Run Code Online (Sandbox Code Playgroud)

这也适用于ERB:

<% if development? %>
<!-- Development Code -->
<%= javascript_include_tag "Dev.js" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)