diff --git a/app/models.py b/app/models.py index c0b700c7..d6b0dad7 100644 --- a/app/models.py +++ b/app/models.py @@ -2602,3 +2602,10 @@ class MessageIDMatching(Base, ModelMixin): # SimpleLogin Message ID sl_message_id = sa.Column(sa.String(512), unique=True, nullable=False) original_message_id = sa.Column(sa.String(1024), unique=True, nullable=False) + + # to track what email_log that has created this matching + email_log_id = sa.Column( + sa.ForeignKey("email_log.id", ondelete="cascade"), nullable=True + ) + + email_log = orm.relationship("EmailLog") diff --git a/migrations/versions/2021_110118_37feaba7c45d_.py b/migrations/versions/2021_110118_37feaba7c45d_.py new file mode 100644 index 00000000..9f3d119a --- /dev/null +++ b/migrations/versions/2021_110118_37feaba7c45d_.py @@ -0,0 +1,31 @@ +"""empty message + +Revision ID: 37feaba7c45d +Revises: 6204e57b4bc4 +Create Date: 2021-11-01 18:40:32.932057 + +""" +import sqlalchemy_utils +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = '37feaba7c45d' +down_revision = '6204e57b4bc4' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.add_column('message_id_matching', sa.Column('email_log_id', sa.Integer(), nullable=True)) + op.create_foreign_key(None, 'message_id_matching', 'email_log', ['email_log_id'], ['id'], ondelete='cascade') + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_constraint(None, 'message_id_matching', type_='foreignkey') + op.drop_column('message_id_matching', 'email_log_id') + # ### end Alembic commands ###