Sha256: f9bbe2050e40d47b56d98ee80d315fc72be9665b09c52c556c282fd1c8d8391d

Contents?: true

Size: 1.31 KB

Versions: 4

Compression:

Stored size: 1.31 KB

Contents

require_dependency 'localtower/application_controller'

module Localtower
  class PagesController < ApplicationController

    def dashboard
    end

    def migrations
    end

    def post_migrations
      # Because we have a list or a field, take the item from the list in priority
      params[:migrations][:migrations] = params[:migrations][:migrations].map do |action_line|
        action_line["new_column_type"] = action_line["column_type"]

        if action_line["column"].present?
          action_line["column"] = action_line["column"]
        end

        if action_line["column_list"].present?
          action_line["column"] = action_line["column_list"]
        end

        action_line.delete("column_list")

        action_line
      end

      use_generator(::Localtower::Generators::Migration, params[:migrations])
      redirect_to migrations_path
    end

    def relations
    end

    def post_relations
      use_generator(::Localtower::Generators::Relation, params[:relations])
      redirect_to relations_path
    end

    def models
    end

    def post_models
      use_generator(::Localtower::Generators::Model, params[:models])
      redirect_to models_path
    end

    private

    def use_generator(generator_klass, options)
      generator = generator_klass.new(options)
      generator.run
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
localtower-0.1.5 app/controllers/localtower/pages_controller.rb
localtower-0.1.4 app/controllers/localtower/pages_controller.rb
localtower-0.1.3 app/controllers/localtower/pages_controller.rb
localtower-0.1.2 app/controllers/localtower/pages_controller.rb