SORU
2 Kasım 2010, Salı


Ekleme 'yapılandırma için lib.autoload_paths' Raylar 3 modül değil otomatik yüklenmesini

Dosya Adı g I yer.rb yan Rails.root/lib klasöründe Dosya içeriği şöyledir:

module Google
end

Sonra da ekliyorum

config.autoload_paths  = %W(#{config.root}/lib #{Rails.root}/app/delayed_jobs)

benim için 5**

Çağırmak için çalışıyorum, ancak rails console bir istisna Google atılır. İstisna require 'google' I çalıştırmak için sadece uzağa gider. Neden? Benim dosya autoloaded olduğunu gerekmiyor ve ben require herhangi bir ekstra açıklama olmadan modülü erişim gerekmez mi?

CEVAP
2 Kasım 2010, Salı


Hmm, ilginç bir şey keşfettim. Otomatik yük Rayları için benim sınıf, sınıf adı, dosya adı ve klasör yapısına uyumlu olmalıdır. Eğer Google modül autoloaded yapmak istiyorum, örneğin, içine yerleştirilen zorundayım google.rb doğrudan /lib (g /lib gelen otomatik yüklenmesini belirtmek örtmek) altında. Eğer otomatik yük istersem Google::Docs o zaman ben de google.rb google/docs.rb içine yerleştirin

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • alex maybury

    alex maybury

    20 Aralık 2007
  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007
  • Lamarr Wilson

    Lamarr Wilso

    27 Aralık 2008