Создайте файл глобальных переменных и получайте к нему доступ везде в приложении Rails;модели, контроллеры и отложенные задания - PullRequest
0 голосов
/ 29 августа 2011

У меня есть около 40 переменных, определенных как: -

 add_notice_sender = "You added %s to the %s group." 
 add_notice_everyone = "%s added %s to the %s group."
 accept_everyone = "%s has joined the %s group."

Я буду заменять% s значениями в разных местах, например, в контроллере или модели или в отложенной работе.Как я могу создать один файл для таких переменных и использовать его только оттуда.Я не хочу размещать его здесь и там во всем приложении.

  • Я пытался в каталоге инициализаторов, но отложенное задание не обращается к нему.
  • Я пытался поместить его в файлв каталоге lib.все еще не повезло.

Ответы [ 2 ]

0 голосов
/ 30 августа 2011

Из комментария Бенуа Гарре: -

config / locales / en.yml, и I18n - подходящее место для таких объявлений переменных.

0 голосов
/ 29 августа 2011

Я уверен, что есть гораздо более элегантное решение, но вы можете создать модуль

module GlobalVariables

  def add_notice_sender
    "You added %s to the %s group"
  end

  ...
end

и в своем файле environment.rb или в application_controller.rb
include GlobalVariables
вставьте файл в папку config / initializers
blammo
или вы можете просто добавить в папку инициализаторов файл, содержащий постоянные версии ваших переменных ADD_NOTICE_SENDER = "You added %s to the %s group."
EDIT
Вместо того, чтобы не думать о лучшем ответе и об отказе от ответственности в моем первоначальном предложении ... это работает, не так ли?Я очень рад попытаться ответить на больше вопросов, ребята. Awesome! .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...