我有一些代码,我只想在生产中显示,例如,显示disqus注释。这样做的最佳方法是什么?目前我有:
<% if RAILS_ENV.eql?('production') %>
disqus code here
<% end %>
但我不确定这是最好的方法,还是它?看起来非常冗长,我需要在应用程序的几个不同的地方。
答案 0 :(得分:46)
有效检查
<% if Rails.env.production? %>
disqus code here
<% end %>
无需在environment.rb或初始化程序中将其作为常量。只是保持你的代码简单并使用Rails.env.production?在我的主要代码库中,我说。
答案 1 :(得分:40)
我建议在application_helper.rb
文件中编写辅助方法:
def render_disqus
return '' unless Rails.env.production?
#render disqus stuff here...
end
然后,在您的视图中,它变得非常简单:
<%= render_disqus %>
答案 2 :(得分:0)
如果您想在生产中显示某些内容,但不想在特定页面上显示,您可以执行以下操作:
<% if !current_page?(controller: 'home', action: 'dashboard') %>
<% if Rails.env.production? %>
<!-- contant go here -->
<% end %>
<% end %>