Method: SOULs::DB#create_migration

Defined in:
lib/souls/cli/db/create_migration.rb

#create_migration(class_name) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/souls/cli/db/create_migration.rb', line 4

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::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("      class Create\#{pluralized_class_name.camelize} < ActiveRecord::Migration[6.1]\n        def change\n          create_table :\#{pluralized_class_name} do |t|\n\n            t.boolean :is_deleted, null: false, default: false\n            t.timestamps\n          end\n        end\n      end\n    TEXT\n  end\nend\n")