Sha256: 9820f18e89ff6700558c7498a77b00163a51631e86d9b6dc20b4d9a05a35ac58

Contents?: true

Size: 1.07 KB

Versions: 25

Compression:

Stored size: 1.07 KB

Contents

module Souls
  class DB < Thor
    desc "create_migration [CLASS_NAME]", "Create ActiveRecord Migration File"
    def create_migration(class_name)
      pluralized_class_name = class_name.underscore.pluralize
      singularized_class_name = class_name.underscore.singularize
      Souls::DB.new.invoke(:model, [singularized_class_name], {})
      Souls::DB.new.invoke(:rspec_model, [singularized_class_name], {})
      Souls::DB.new.invoke(:model_rbs, [singularized_class_name], {})
      Souls::Painter.create_file("")
      system("rake db:create_migration NAME=create_#{pluralized_class_name}")
      file_path = Dir["db/migrate/*create_#{pluralized_class_name}.rb"].first
      File.open(file_path, "w") do |f|
        f.write(<<~TEXT)
          class Create#{pluralized_class_name.camelize} < ActiveRecord::Migration[6.1]
            def change
              create_table :#{pluralized_class_name} do |t|

                t.boolean :is_deleted, null: false, default: false
                t.timestamps
              end
            end
          end
        TEXT
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
souls-1.17.3 lib/souls/cli/db/create_migration.rb
souls-1.17.2 lib/souls/cli/db/create_migration.rb
souls-1.17.1 lib/souls/cli/db/create_migration.rb
souls-1.17.0 lib/souls/cli/db/create_migration.rb
souls-1.16.4 lib/souls/cli/db/create_migration.rb
souls-1.16.3 lib/souls/cli/db/create_migration.rb
souls-1.16.2 lib/souls/cli/db/create_migration.rb
souls-1.16.1 lib/souls/cli/db/create_migration.rb
souls-1.16.0 lib/souls/cli/db/create_migration.rb
souls-1.15.5 lib/souls/cli/db/create_migration.rb
souls-1.15.4 lib/souls/cli/db/create_migration.rb
souls-1.15.3 lib/souls/cli/db/create_migration.rb
souls-1.15.2 lib/souls/cli/db/create_migration.rb
souls-1.15.1 lib/souls/cli/db/create_migration.rb
souls-1.15.0 lib/souls/cli/db/create_migration.rb
souls-1.14.3 lib/souls/cli/db/create_migration.rb
souls-1.14.2 lib/souls/cli/db/create_migration.rb
souls-1.14.1 lib/souls/cli/db/create_migration.rb
souls-1.14.0 lib/souls/cli/db/create_migration.rb
souls-1.13.8 lib/souls/cli/db/create_migration.rb