Sha256: eca00cb3c9f58842226365f3ecff31244676a957e56c5517ec1dd00d9bc22fdb
Contents?: true
Size: 1.05 KB
Versions: 29
Compression:
Stored size: 1.05 KB
Contents
require 'active_support' require 'active_support/core_ext' require 'string/builder' require 'thor' module Eucalypt module Generators module Drop class Table < Thor::Group include Thor::Actions include Eucalypt::Helpers using String::Builder def self.source_root File.join File.dirname(File.dirname(File.dirname __dir__)) end def generate(name:) name = Inflect.resource_keep_inflection(name.to_s) sleep 1 migration_name = "drop_#{name}" migration = Eucalypt::Helpers::Migration[title: migration_name, template: 'migration_base.tt'] return unless migration.create_anyway? if migration.exists? config = {migration_class_name: migration_name.camelize} template migration.template, migration.file_path, config insert_into_file migration.file_path, :after => "def change\n" do String.build do |s| s << " drop_table :#{name}\n" end end end end end end end
Version data entries
29 entries across 29 versions & 1 rubygems