Ruby versiyonunu Rails içinden belirleyin


82

Ruby'nin hangi sürümünün Rails içinden (web üzerinden veya üzerinden script/console) çalıştığını belirlemenin bir yolu var mı ? Ruby 1.8.6 yüklüyüm ama Ruby Enterprise Edition 1.8.7-20090928'i de kurdum ve doğru kurulumu kullandığından emin olmak istiyorum.

Yanıtlar:


166

Üst Düzey Sabiti Kullanın

RUBY_VERSION

diğer kullanışlı Üst Düzey Sabitler

RUBY_PATCHLEVEL
RUBY_PLATFORM
RUBY_RELEASE_DATE

işte bir irb oturumu:

irb(main):001:0> RUBY_VERSION
=> "1.8.7"

12

RUBY_VERSION sabitini deneyin. Bunu 1.8 veya JRuby altında çalışıp çalışmadığımı belirlemek için kapsamlı bir şekilde kullanıyorum.

Ayrıca, üretim modunda değilseniz, "/ rails / info / properties" URL'sine basarak hızlı bir kontrol yapabilirsiniz.


10

RUBY_VERSION sabiti ve arkadaşlarına ek olarak, Config :: CONFIG'e de göz atmak isteyebilirsiniz. Bu karma yalnızca sürüm numaralarını değil, aynı zamanda ikili programın yolu, ana bilgisayar adı, ...


teşekkür ederim, Ruby 2.0 ve rails 4.0 için 'puts RbConfig.ruby' kullanıyorum ve '/usr/local/rvm/rubies/ruby-2.0.0-p247/bin/ruby'
quatermain

9

RUBY_VERSIONBaşkaları tarafından belirtildiği gibi kullanın .

Daha sonra Gem::Versionsürüm dizesi karşılaştırması yapmak için kullanabilirsiniz :

require 'rubygems' # Only needed for ruby pre-1.9.0 but it's 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                                                          

Keşke bu cevabın orada olsaydı - stackoverflow.com/q/11819525/322020 - ama onu taşıyamıyorum, bu yüzden sizden bunu silmenizi ve oraya göndermenizi rica ediyorum.
Nakilon
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.