У меня есть фрагмент JavaScript, который я хочу добавить к странице, но только в продуктивной среде. Делает направляющие, имеют способ вставить или условно включать в развертывание. Я знаю, что мог сделать "если Rails.env.production?" Но я не сделал бы этой проверки условия каждый раз, когда страница загружается.
В этой ситуации я создаю константу в конфигурационном файле каждой среды:
#config/environments/development.rb
SNIPPET = ""
#config/environments/production.rb
SNIPPET = "<script src='whatever.js'></script>"
#app/views/file.html.erb
<%= SNIPPET %>
Я бы не беспокоился о накладных расходах одного , если бы
заявление было сделано.
Почему бы не использовать пользовательский метод помощи:
def snippet
if RAILS_ENV == "production"
javascript_tag "whatever"
elsif . . .
end
тогда вы можете использовать тот же синтаксис:
<%= snippet %>
и вы получите пару преимуществ: