- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
def self.check_environment_variables
env_variables_missing = ENV['BATTLE_NET_KEY'].nil? || ENV['BATTLE_NET_KEY'].empty? || ENV['BATTLE_NET_REGION'].nil? || ENV['BATTLE_NET_REGION'].empty? || ENV['BATTLE_NET_LOCALE'].nil? || ENV['BATTLE_NET_LOCALE'].empty?
message = 'Env variables missing:' if env_variables_missing
message += " ENV['BATTLE_NET_KEY']" if ENV['BATTLE_NET_KEY'].nil? || ENV['BATTLE_NET_KEY'].empty?
message += " ENV['BATTLE_NET_REGION']" if ENV['BATTLE_NET_REGION'].nil? || ENV['BATTLE_NET_REGION'].empty?
message += " ENV['BATTLE_NET_LOCALE']" if ENV['BATTLE_NET_LOCALE'].nil? || ENV['BATTLE_NET_LOCALE'].empty?
message if env_variables_missing
end
Кто-нибудь знает метод, которым можно проверять на nil и на empty одновременно?
или какулька типа такой:
делов то
а false != nil != true, лагична же!
Возможно я не сказал что-то или вы не правельна меня понели.
явно что у ничего не может быть метода на пустоту
Как это реализовать одним методом, чтобы не засорять код?
Сейчас:
ENV['BATTLE_NET_KEY'].nil? || ENV['BATTLE_NET_KEY'].empty?
Должно быть:
ENV['BATTLE_NET_KEY'].method?
Тогда ответ что за method очевиден. Ну я написал выше как сделать чтоб .emtpy? работал для nil, но это грязный хак и проблемы не заставят себя ждать.
Хотя в данном случае по-моему проблема X-У, кто мешает сделать
[ ENV['BATTLE_NET_KEY'], ENV['BATTLE_NET_REGION'], ENV['BATTLE_NET_REGION'] ].select{|x| x.nil? || x.empty?}
Но не смекну как добавлять сообщения-предупреждения о необходимости ввести то или иное значение.
keys = [ ENV['BATTLE_NET_KEY'], ENV['BATTLE_NET_REGION'], ENV['BATTLE_NET_LOCALE'] ].select{|x| x.nil? || x.empty?}
message = 'Env variables missing:' if keys.include?(nil) || keys.include?('')
message += " ENV['BATTLE_NET_KEY']" if keys[0] == nil || keys[0] == ''
message += " ENV['BATTLE_NET_REGION']" if keys[1] == nil || keys[1] == ['']
message += " ENV['BATTLE_NET_LOCALE']" if keys[2] == nil || keys[2] == ['']
message
return ""
else
return 'Env variables missing:'+keys.map{|x| "ENV[#{x}]"}.join(" ")
if keys.empty?
return ""
else
return 'Env variables missing:'+keys.map{|x| "ENV[#{x}]"}.join(" ")
end
Не пашет...
```
def self.check_environment_variables
checked_env_vars = %w(BATTLE_NET_KEY BATTLE_NET_REGION BATTLE_NET_LOCALE)
missing_env_vars = checked_env_vars.select { |env_var| ENV.fetch(env_var, '').empty? }
message = missing_env_vars.map { |env_var| "ENV['#{env_var}']" }.join(', ')
"Env variables missing: #{message}" if missing_env_vars.any?
end
```
А Хуюби - это ты сам придумал
попытка примирить поливановохолопов и хэпбернобояр провалилась
И да, я считаю, что хепбёрновка не нужна, ибо кунрэй/нихон ближе к самой задумке каны.