Class: Hyrax::ContextualPath
- Inherits:
-
Object
- Object
- Hyrax::ContextualPath
- Includes:
- ActionDispatch::Routing::PolymorphicRoutes
- Defined in:
- app/services/hyrax/contextual_path.rb
Overview
Provides a polymorphic path for a target object (presenter) nested under the path of the parent, if given.
Instance Attribute Summary collapse
- #parent_presenter ⇒ Object readonly
- #presenter ⇒ Object readonly
Instance Method Summary collapse
-
#initialize(presenter, parent_presenter) ⇒ ContextualPath
constructor
A new instance of ContextualPath.
- #show ⇒ String
Constructor Details
#initialize(presenter, parent_presenter) ⇒ ContextualPath
Returns a new instance of ContextualPath.
28 29 30 31 |
# File 'app/services/hyrax/contextual_path.rb', line 28 def initialize(presenter, parent_presenter) @presenter = presenter @parent_presenter = parent_presenter end |
Instance Attribute Details
#parent_presenter ⇒ Object (readonly)
22 23 24 |
# File 'app/services/hyrax/contextual_path.rb', line 22 def parent_presenter @parent_presenter end |
#presenter ⇒ Object (readonly)
22 23 24 |
# File 'app/services/hyrax/contextual_path.rb', line 22 def presenter @presenter end |
Instance Method Details
#show ⇒ String
35 36 37 38 39 40 41 42 43 |
# File 'app/services/hyrax/contextual_path.rb', line 35 def show if parent_presenter polymorphic_path([:hyrax, :parent, presenter.model_name.singular.to_sym], parent_id: parent_presenter.id, id: presenter.id) else polymorphic_path([presenter]) end end |