命名規則とオートローディングに関する質問があります。Railsアプリケーションで/ app /の下にあるカスタムディレクトリの命名規則は?
私は私の理解では、私はちょうどこのようにそのファイルを作成することができますということでしたapp/presenters/items/item_presenter.rb
でプレゼンターItemPresenterを持つようにしたい:
module Items
class ItemPresenter
end
end
をしかし、私はこれを行う際にItems::ItemPresenter
としてプレゼンターを呼び出そう私はuninitialized constant
エラーを取得する:
uninitialized constant Items::ItemPresenter
def show
@presenter = Items::ItemPresenter.new # this is the highlighted line of my Controller
EDIT:それはDIFについてですのでRails, Custom Folders and Namespacesが重複していませんferentのディレクトリ構造jobs/smth.rb
私はpresenters/items/item_presenter.rb
(1以上のレベル)を実現しようとしていながら
EDIT2:それは、レールコンソールから作品でもない:NameError: uninitialized constant Items::ItemPresenter
EDIT2:示唆したように私はこれをやってみました:
module Presenters
module Items
class ItemPresenter
def test
"hello"
end
end
end
end
と私のコントローラの@presenter = Presenters::Items::ItemPresenter.new
:
uninitialized constant TrialsController::Presenters
それはレールのように見えないまったく全くありません。
EDIT3:それを考え出した:サンプルアプリhttps://github.com/dontlookforme/test_app
EDIT4を作成しました。私はファイル名を台無しにしました(私が投稿した回答を参照)
あなたはあなたが得ている正確なエラーメッセージを投稿できますか?私はこれをダミーのアプリケーションで作成し、私のレールコンソールで 'Items :: ItemPresenter'を呼び出すことができました。 – sixty4bit
モジュールが必要ですか?プレゼンターはモジュールアイテムとクラスItemPresenterを含んでいますか? –
@ sixty4bit ugh。私のためのレールコンソールでも動作しません:(質問を更新しました – Anton