Module: LinkedRails::Helpers::ResourceHelper
- Defined in:
- lib/linked_rails/helpers/resource_helper.rb
Instance Method Summary collapse
- #current_resource ⇒ Object
- #new_resource ⇒ Object
- #params_for_parent ⇒ Object
- #parent_from_params ⇒ Object
- #parent_from_params! ⇒ Object
- #parent_resource ⇒ Object
- #parent_resource! ⇒ Object
- #requested_resource_parent ⇒ Object
Instance Method Details
#current_resource ⇒ Object
6 7 8 9 10 |
# File 'lib/linked_rails/helpers/resource_helper.rb', line 6 def current_resource return @current_resource if instance_variable_defined?(:@current_resource) @current_resource ||= resolve_current_resource end |
#new_resource ⇒ Object
12 13 14 15 16 17 18 19 20 21 |
# File 'lib/linked_rails/helpers/resource_helper.rb', line 12 def new_resource @new_resource ||= if requested_resource.try(:singular_resource?) requested_resource elsif parent_resource new_resource_from_parent else build_new_resource end end |
#params_for_parent ⇒ Object
23 24 25 |
# File 'lib/linked_rails/helpers/resource_helper.rb', line 23 def params_for_parent params.dup end |
#parent_from_params ⇒ Object
27 28 29 |
# File 'lib/linked_rails/helpers/resource_helper.rb', line 27 def parent_from_params @parent_from_params ||= LinkedRails.iri_mapper.parent_from_params(params, user_context) end |
#parent_from_params! ⇒ Object
31 32 33 |
# File 'lib/linked_rails/helpers/resource_helper.rb', line 31 def parent_from_params! parent_from_params || raise(ActiveRecord::RecordNotFound) end |
#parent_resource ⇒ Object
35 36 37 |
# File 'lib/linked_rails/helpers/resource_helper.rb', line 35 def parent_resource @parent_resource ||= requested_resource_parent || parent_from_params end |
#parent_resource! ⇒ Object
39 40 41 |
# File 'lib/linked_rails/helpers/resource_helper.rb', line 39 def parent_resource! parent_resource || raise(ActiveRecord::RecordNotFound) end |
#requested_resource_parent ⇒ Object
43 44 45 |
# File 'lib/linked_rails/helpers/resource_helper.rb', line 43 def requested_resource_parent requested_resource&.parent end |