измените erb файл на развертывании

У меня есть фрагмент JavaScript, который я хочу добавить к странице, но только в продуктивной среде. Делает направляющие, имеют способ вставить или условно включать в развертывание. Я знаю, что мог сделать "если Rails.env.production?" Но я не сделал бы этой проверки условия каждый раз, когда страница загружается.

5
задан ChrisF 17 January 2010 в 21:44
поделиться

2 ответа

В этой ситуации я создаю константу в конфигурационном файле каждой среды:

#config/environments/development.rb
SNIPPET = ""

#config/environments/production.rb
SNIPPET = "<script src='whatever.js'></script>"

#app/views/file.html.erb
<%= SNIPPET %>
1
ответ дан 14 December 2019 в 13:38
поделиться

Я бы не беспокоился о накладных расходах одного , если бы заявление было сделано.

Почему бы не использовать пользовательский метод помощи:


def snippet
  if RAILS_ENV == "production"
   javascript_tag "whatever"
  elsif . . .
end
тогда вы можете использовать тот же синтаксис:

<%= snippet %>

и вы получите пару преимуществ:

  • доступ к другим помощникам рельсов
  • ваш конфигурационный файл не будет замусорен сырым html
5
ответ дан 14 December 2019 в 13:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: