Как определить константу при запуске скрипта / сервера? - PullRequest
1 голос
/ 07 апреля 2010

Я хочу запустить свой сервер разработки Rails следующим образом:

script/server OFFLINE_MODE=1

и есть метод в application_controller.rb, который проверяет наличие этой константы:

helper_method :offline_mode?
def offline_mode?
  defined?(OFFLINE_MODE) ? true : false
end

так что я могу скрывать вещи в своем приложении, когда кодирую без доступа к интернету. По какой-то причине OFFLINE_MODE, кажется, никогда не определяется, и метод всегда возвращает false .. мысли?

Ответы [ 2 ]

3 голосов
/ 07 апреля 2010

Вы можете использовать переменную окружения, чтобы сделать это:

OFFLINE_MODE=1 script/server

def offline_mode?
    defined?(ENV['OFFLINE_MODE']) ? true : false
end
2 голосов
/ 07 апреля 2010

Попробуйте:

script/server offline foo bar

Ваши помощники

helper_method :offline_mode?, :foo?
def offline_mode?
  ARGV.include?('offline')
end

# another example
def foo?
  ARGV.include?('foo')
end
...