7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
# File 'lib/generators/site_setting_rename_migration/site_setting_rename_migration_generator.rb', line 7
def create_migration_file
migration_version = ActiveRecord::Migration.next_migration_number(0)
file_path = "db/migrate/#{migration_version}_rename_#{old_name}_setting.rb"
class_name = "Rename#{old_name.classify}Setting"
validate_setting_name!(old_name)
validate_setting_name!(new_name)
create_file file_path, <<~MIGRATION_FILE
# frozen_string_literal: true
class #{class_name} < ActiveRecord::Migration[7.0]
def up
execute "UPDATE site_settings SET name = '#{new_name}' WHERE name = '#{old_name}'"
end
def down
execute "UPDATE site_settings SET name = '#{old_name}' WHERE name = '#{new_name}'"
end
end
MIGRATION_FILE
end
|