Class: JSONAPI::ShowAssociationOperation
- Defined in:
- lib/jsonapi/operation.rb
Instance Attribute Summary collapse
-
#association_type ⇒ Object
readonly
Returns the value of attribute association_type.
-
#parent_key ⇒ Object
readonly
Returns the value of attribute parent_key.
Attributes inherited from Operation
#options, #resource_klass, #transactional
Instance Method Summary collapse
- #apply ⇒ Object
-
#initialize(resource_klass, options = {}) ⇒ ShowAssociationOperation
constructor
A new instance of ShowAssociationOperation.
Constructor Details
#initialize(resource_klass, options = {}) ⇒ ShowAssociationOperation
Returns a new instance of ShowAssociationOperation.
96 97 98 99 100 101 |
# File 'lib/jsonapi/operation.rb', line 96 def initialize(resource_klass, = {}) @parent_key = .fetch(:parent_key) @association_type = .fetch(:association_type) @transactional = false super(resource_klass, ) end |
Instance Attribute Details
#association_type ⇒ Object (readonly)
Returns the value of attribute association_type.
94 95 96 |
# File 'lib/jsonapi/operation.rb', line 94 def association_type @association_type end |
#parent_key ⇒ Object (readonly)
Returns the value of attribute parent_key.
94 95 96 |
# File 'lib/jsonapi/operation.rb', line 94 def parent_key @parent_key end |
Instance Method Details
#apply ⇒ Object
103 104 105 106 107 108 109 110 111 112 |
# File 'lib/jsonapi/operation.rb', line 103 def apply parent_resource = resource_klass.find_by_key(@parent_key, context: @context) return JSONAPI::LinksObjectOperationResult.new(:ok, parent_resource, resource_klass._association(@association_type)) rescue JSONAPI::Exceptions::Error => e return JSONAPI::ErrorsOperationResult.new(e.errors[0].code, e.errors) end |