3

の下にファイルを作成しようとしていますmyapplication/somefolder。GoogleとStackoverflowは、これを追加する必要があると言っています。

config.autoload_paths += %W(#{config.root}/somefolder)

私の中config/application.rbで、そうしました。

ただし、ファイルは読み込まれません。

somefolder/myclass.rb私は両方ともclass Myclassnamigを試しましclass Somefolder::Myclassたが、それでも運がありません。

Rails.application.config.autoload_pathsコンソールで見つかったディレクトリには実際に私のディレクトリが含まれていることがわかります/path/to/myapplication/somefolderので、問題ないはずです。

このトピックに関する他のすべての質問は、それが腐敗する場所を使用するtheapp/app/somefoldertheapp/lib/somefolder、そうではないかもしれません。theapp/somefolder

だから私はクラスを参照しようとしまし::Somefolder::MyClassたが、それでも役に立ちませんでした。

Rails3.2.1を使用しています

4

3 に答える 3

1

自動ロードするには、名前somefolder/my_class.rbを付ける必要がありMyClassます。config.autoload_paths += %W(#{config.root}/somefolder)また、その行をに保持する必要がありますconfig/application.rb

于 2012-09-14T14:02:49.133 に答える
1

回避策は、ActiveSupport::Dependencies.autoload_paths直接アクセスすることです。

ActiveSupport::Dependencies.autoload_paths << "#{config.root}/somefolder"

しかし、config.autoload_paths が機能しなかった理由をまだ探しているので、それに対する回答を投稿していただければ、それを受け入れます!

于 2012-02-24T13:19:22.830 に答える