2011-01-08 8 views
26

Tengo algunos códigos que me gustaría mostrar solo en producción, por ejemplo, mostrar comentarios de disqus. ¿Cuál es la mejor manera de hacerlo? Actualmente tengo:Rieles: ¿la mejor manera de mostrar el código solo en producción?

<% if RAILS_ENV.eql?('production') %> 
    disqus code here 
<% end %> 

Pero no estoy seguro de si ese es el mejor método, ¿o no? Parece bastante detallado y lo necesitaría en algunos lugares diferentes en la aplicación.

Respuesta

39

Te sugiero escribir un método de ayuda en su application_helper.rb archivo:

def render_disqus 
    return '' unless Rails.env.production? 
    #render disqus stuff here... 
end 

Luego, en su opinión, se pone muy simple:

<%= render_disqus %> 
+0

Plagiarizer! :) ¡pero no importa! –

+2

'if not' podría cambiarse a' a menos que' – Besi

45

El control efectivo es

<% if Rails.env.production? %> 
    disqus code here 
<% end %> 

No hay necesidad de ponerlo como una constante en su environment.rb o un inicializador. Simplemente mantenga su código simple y use Rails.env.production? en tu base de código principal, digo.

Cuestiones relacionadas