Sha256: 6a671fd0127517722e9b892b082f49cc887911d83a9290f3e72ef20d0a15476b

Contents?: true

Size: 889 Bytes

Versions: 20

Compression:

Stored size: 889 Bytes

Contents

# frozen_string_literal: true

require 'active_support/concern'
require_relative 'setup_controller_concern'
require_relative 'change_controller_concern'

module SnFoil
  module Controller
    module Concerns
      module UpdateControllerConcern
        extend ActiveSupport::Concern

        included do
          include SetupControllerConcern
          include ChangeControllerConcern
        end

        def update(**options)
          options = setup_update(**options)
          model = process_update(**options)
          render_update(model, **options)
        end

        def setup_update(**options)
          setup_options(**options)
        end

        def process_update(**options)
          current_context(**options).update(**options)
        end

        def render_update(model, **options)
          render_change(model, **options)
        end
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
snfoil-rails-0.9.0 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.8.5 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.8.3 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.8.2 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.8.1 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.8.0 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.7.1 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.7.0 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.5.5 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.5.4 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.5.3 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.5.2 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.5.1 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.5.0 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.4.6 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.4.5 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.4.4 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.4.3 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.4.1 lib/sn_foil/controller/concerns/update_controller_concern.rb
snfoil-rails-0.3.0 lib/sn_foil/controller/concerns/update_controller_concern.rb