Я пытаюсь реализовать HomePresenter для использования внутри действия home моего контроллера Pages:
# app/controllers/pages_controller.rb
class PagesController < ApplicationController
def home
@presenter = Pages::HomePresenter.new(current_user)
end
...
end
# app/presenters/pages/home_presenter.rb
module Pages
class HomePresenter
def initialize(user)
@user = user
end
...
end
end
Мои спецификации докладчика проходят без ошибок, но когда я запускаю сервер и получаю доступ к домашней странице в Chrome, я получаю следующее:
uninitialized constant ActionController::Caching::Pages::HomePresenter
Для двух других моделей в моем приложении я использую IndexPresenters, которые почти идентичны этой в отношении соглашения об именах и структуре каталогов, но ни одна из них не дает этой ошибки.
Нашел похожий, но без ответа пост здесь:
Конфликт имен между именем контроллера и пространством имен докладчика
Есть идеи?