Есть ли способ определить, какая версия Ruby работает из Rails (либо в Интернете, либо через script/console
)? У меня установлен Ruby 1.8.6, но я также установил Ruby Enterprise Edition 1.8.7-20090928 и хочу убедиться, что он использует правильную установку.
Определить версию Ruby из Rails
Ответ 1
Используйте константу верхнего уровня
RUBY_VERSION
другие полезные константы верхнего уровня:
RUBY_PATCHLEVEL
RUBY_PLATFORM
RUBY_RELEASE_DATE
здесь сеанс irb:
irb(main):001:0> RUBY_VERSION
=> "1.8.7"
Ответ 2
Попробуйте константу RUBY_VERSION. Я использую это широко, чтобы определить, работает ли я под 1.8 или JRuby.
Кроме того, если вы не находитесь в режиме производства, вы можете выполнить быструю проверку, нажав URL-адрес "/rails/info/properties"
Ответ 3
Помимо константы и друзей RUBY_VERSION, вы также можете проверить Config:: CONFIG. Этот хеш содержит не только номера версий, но и тонну другой полезной информации о времени выполнения, например путь к двоичному, имя хоста,...
Ответ 4
Используйте RUBY_VERSION
, как упоминалось другими.
Затем вы можете использовать Gem::Version
для сравнения строк версии:
require 'rubygems' # Only needed for ruby pre-1.9.0 but it safe for later versions (evaluates to false).
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('1.9.0')
extend DL::Importable
else
extend DL::Importer
end