diff --git a/db/migrate/20230605133804_remove_master_variants.rb b/db/migrate/20230605133804_remove_master_variants.rb index b5b88d4d26..e2edd7b25f 100644 --- a/db/migrate/20230605133804_remove_master_variants.rb +++ b/db/migrate/20230605133804_remove_master_variants.rb @@ -4,7 +4,7 @@ class RemoveMasterVariants < ActiveRecord::Migration[7.0] delete_master_option_values end - delete_master_line_items + handle_master_line_items delete_master_inventory_units delete_master_variant_prices delete_master_variants @@ -12,10 +12,11 @@ class RemoveMasterVariants < ActiveRecord::Migration[7.0] private - def delete_master_line_items + def handle_master_line_items ActiveRecord::Base.connection.execute(<<-SQL - DELETE FROM spree_line_items - USING spree_variants + UPDATE spree_variants + SET is_master = false + FROM spree_line_items WHERE spree_variants.is_master = true AND spree_variants.id = spree_line_items.variant_id SQL