make sure original_transaction_id is unique

This commit is contained in:
Son NK 2020-04-19 23:13:07 +02:00
parent d5e868e629
commit b5b4fe2773
2 changed files with 31 additions and 1 deletions

View File

@ -940,7 +940,8 @@ class AppleSubscription(db.Model, ModelMixin):
expires_date = db.Column(ArrowType, nullable=False)
original_transaction_id = db.Column(db.String(256), nullable=False)
# to avoid using "Restore Purchase" on another account
original_transaction_id = db.Column(db.String(256), nullable=False, unique=True)
receipt_data = db.Column(db.Text(), nullable=False)
plan = db.Column(db.Enum(PlanEnum), nullable=False)

View File

@ -0,0 +1,29 @@
"""empty message
Revision ID: bd05eac83f5f
Revises: dd911f880b75
Create Date: 2020-04-19 23:12:26.675833
"""
import sqlalchemy_utils
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision = 'bd05eac83f5f'
down_revision = 'dd911f880b75'
branch_labels = None
depends_on = None
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.create_unique_constraint(None, 'apple_subscription', ['original_transaction_id'])
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.drop_constraint(None, 'apple_subscription', type_='unique')
# ### end Alembic commands ###