(プロジェクト固有の) クラスを Rails のコントローラーに追加する必要がある場合、.rb ファイルを配置して「含める」正しい方法/場所は何ですか? (引用符: ruby キーワードが含まれていない)
私はレールが初めてで、正しい方法が見つかりませんでした。LIB は、より多くのパブリック ライブラリのように聞こえます。また、私が学んだことでは、開発モードではデフォルトでリロードされません。
確かに、controler.rb にすべてを入れることはできますが、...
私のための答え:
まず、レールのルールを覚えている(または私のように学ぶ)場合、ルールはありません:NameOfCla -> name_of_cla(.rb)
クラスに好きな名前を付けます:
class ExtendCon #<--- not using controller here for clearence
....
ファイルに入れてextend_con.rb
、パスの説明を待ってください。クラスに「MYGreatThing」という名前を付けた場合、それは「m_y_great_thing」になります(テストしないでください)ので、中国語の文字は避けてください
コントローラーが使用する場合
@letssee=ExtendCon.new
rails はそのクラスとファイル (extend_con) を独自に学習します。サーバーの再起動が必要かどうかはまだわかりません。(初めて)
ファイルを配置するパスを選択します: (私は Daves の方法が好きです)app/myexten
または好きなものを選択して、「アプリ」固有にし、標準的な Rails の「もの」と区別します
あなたが私のように怠け者ではない場合(私はアプリ/コントローラーに入れます)、選択したパスを
config/application.rb
好きなように入力します(コメントはそれを見つけるためにそこにあります)
# Custom directories with classes and modules you want to be autoloadable.
# config.autoload_paths += %W(#{config.root}/app/controllers)
config.autoload_paths += %W(#{config.root}/app/myexten)
これは、「開発者」を含むすべてのモードで機能し、「自分の」ものを app/lib に入れる必要はありませんでした