diff --git a/db/migrate/20260426120000_replace_beamer_asset_fields_with_config.rb b/db/migrate/20260426120000_replace_beamer_asset_fields_with_config.rb index c726149..f9b8f99 100644 --- a/db/migrate/20260426120000_replace_beamer_asset_fields_with_config.rb +++ b/db/migrate/20260426120000_replace_beamer_asset_fields_with_config.rb @@ -14,12 +14,6 @@ class ReplaceBeamerAssetFieldsWithConfig < ActiveRecord::Migration[7.0] END SQL - execute <<~SQL.squish - UPDATE beamers - SET config = '{"match_filter":"state:in_progress"}' - WHERE name = 'default' - SQL - change_column_default :beamers, :display_state, from: 'matches_all', to: 'during_game' remove_column :beamers, :qr_code_url, :string remove_column :beamers, :logo_url, :string diff --git a/db/migrate/20260426121000_backfill_default_beamer_config.rb b/db/migrate/20260426121000_backfill_default_beamer_config.rb new file mode 100644 index 0000000..a1b0f96 --- /dev/null +++ b/db/migrate/20260426121000_backfill_default_beamer_config.rb @@ -0,0 +1,19 @@ +# frozen_string_literal: true + +class BackfillDefaultBeamerConfig < ActiveRecord::Migration[7.0] + def up + execute <<~SQL.squish + UPDATE beamers + SET config = '{"match_filter":"state:in_progress"}' + WHERE name = 'default' + SQL + end + + def down + execute <<~SQL.squish + UPDATE beamers + SET config = '{}' + WHERE name = 'default' + SQL + end +end diff --git a/db/schema.rb b/db/schema.rb index 1884bd4..002741a 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.0].define(version: 2026_04_26_120000) do +ActiveRecord::Schema[7.0].define(version: 2026_04_26_121000) do create_table "beamers", force: :cascade do |t| t.string "name", null: false t.string "display_state", default: "during_game", null: false