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

  • Dive In

    Dive In

    17 Temmuz 2013
  • Paul Schroder

    Paul Schrode

    30 Kasım 2007
  • psidot

    psidot

    2 Kasım 2006