[odrs-web] Add the foreign key after the tables have been repaired



commit 01d2916794b80b0526fc07add97c347846cd0e5d
Author: Richard Hughes <richard hughsie com>
Date:   Thu Jul 4 12:20:53 2019 +0100

    Add the foreign key after the tables have been repaired

 app_data/migrations/versions/e6fa15874247_.py | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)
---
diff --git a/app_data/migrations/versions/e6fa15874247_.py b/app_data/migrations/versions/e6fa15874247_.py
index 3e1c316..927fa91 100644
--- a/app_data/migrations/versions/e6fa15874247_.py
+++ b/app_data/migrations/versions/e6fa15874247_.py
@@ -29,8 +29,10 @@ def upgrade():
         sa.UniqueConstraint('component_id'),
         mysql_character_set='utf8mb4'
         )
+    except InternalError as e:
+        print(str(e))
+    try:
         op.add_column('reviews', sa.Column('component_id', sa.Integer(), nullable=False))
-        op.create_foreign_key(None, 'reviews', 'components', ['component_id'], ['component_id'])
     except InternalError as e:
         print(str(e))
 
@@ -57,7 +59,13 @@ def upgrade():
         review.component_id = app_ids[review._app_id].component_id
     db.session.commit()
 
+    # should all be valid now
+    try:
+        op.create_foreign_key('components_ibfk_3', 'reviews', 'components', ['component_id'], 
['component_id'])
+    except InternalError as e:
+        print(str(e))
+
 def downgrade():
-    #op.drop_constraint(None, 'reviews', type_='foreignkey')
+    op.drop_constraint('components_ibfk_3', 'reviews', type_='foreignkey')
     op.drop_column('reviews', 'component_id')
     op.drop_table('components')


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]