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

  • Eric Magidson

    Eric Magidso

    4 Ocak 2009
  • kruno j

    kruno j

    6 Mayıs 2007
  • Phymec

    Phymec

    18 Temmuz 2009