Class: JSONAPI::Realizer::Action::Create

Inherits:
JSONAPI::Realizer::Action show all
Defined in:
lib/jsonapi/realizer/action/create.rb

Instance Attribute Summary collapse

Attributes inherited from JSONAPI::Realizer::Action

#payload

Instance Method Summary collapse

Constructor Details

#initialize(payload:, headers:) ⇒ Create

Returns a new instance of Create.



7
8
9
10
11
# File 'lib/jsonapi/realizer/action/create.rb', line 7

def initialize(payload:, headers:)
  @payload = payload
  @headers = headers
  @resource = resource_class.new(relation.new)
end

Instance Attribute Details

#resourceObject

Returns the value of attribute resource.



5
6
7
# File 'lib/jsonapi/realizer/action/create.rb', line 5

def resource
  @resource
end

Instance Method Details

#callObject



13
14
15
16
17
18
# File 'lib/jsonapi/realizer/action/create.rb', line 13

def call
  adapter.assign_attributes_via_call(resource.model, {id: id}) if id
  adapter.assign_attributes_via_call(resource.model, attributes)
  adapter.assign_relationships_via_call(resource.model, relationships)
  adapter.create_via_call(resource.model)
end

#modelObject



20
21
22
# File 'lib/jsonapi/realizer/action/create.rb', line 20

def model
  resource.model
end