Sha256: 51d1bced5bcfd7913e8814ab4acb0a34245d89761a1034a335034d80c1b32b2a

Contents?: true

Size: 667 Bytes

Versions: 1

Compression:

Stored size: 667 Bytes

Contents

# frozen_string_literal: true

module Forms
  class Formulas::PlaygroundsController < Forms::Formulas::ApplicationController
    before_action :set_virtual_model

    def show
      @form_record = @virtual_model.new
    end

    def create
      @form_record = @virtual_model.new form_record_params
      return render :show unless @form_record.valid?

      @payload = @form_record.serializable_hash
      @result = ScriptEngine.run_inline @formula.body, payload: @payload
    end

    private

    def set_virtual_model
      @virtual_model = @form.to_virtual_model
    end

    def form_record_params
      params.fetch(:form_record, {}).permit!
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
script_core-0.1.0 spec/dummy/app/controllers/forms/formulas/playgrounds_controller.rb