プレゼンタークラスでルートヘルパーを利用しようとすると、なぜ500エラーが発生するのか理解できないようです。
/apps/presenters/base_presenter.rb/apps/presenters/object_presenter.rbの下にPresenterクラスがあります
class BasePresenter
def self.as_collection(collection)
collection.collect{|object| self.new(object)}
end
def help
Helper.instance
end
class Helper
include Singleton
include Rails.application.routes.url_helpers
include ActionView::Helpers::TextHelper
include ActionView::Helpers::TagHelper
include ActionView::Helpers::UrlHelper
include ApplicationHelper
include UrlHelper
end
end
そのため、オブジェクトプレゼンターでは、as_jsonに対して次のようにします。このURLを追加するまで、すべてが機能します。Railsルートにアクセスできない理由について困惑しました。
class ObjectPresenter < BasePresenter
def initialize( object )
@object = object
end
def as_json(*args)
{
:url => blah_blah_url(@object, :subdomain => "www")
}
end
end
私は困惑しているので、どんな助けでも大歓迎です:)