diff --git a/backend/app/alembic/versions/38bf9e7e74b3_add_all_initial_models.py b/backend/app/alembic/versions/38bf9e7e74b3_add_all_initial_models.py index 17decad..7068bc6 100644 --- a/backend/app/alembic/versions/38bf9e7e74b3_add_all_initial_models.py +++ b/backend/app/alembic/versions/38bf9e7e74b3_add_all_initial_models.py @@ -317,8 +317,8 @@ def upgrade() -> None: sa.Column('gift_id', sa.UUID(), nullable=False), sa.Column('reserved_at', sa.DateTime(timezone=True), nullable=True), sa.Column('notes', sa.String(), nullable=True), - sa.ForeignKeyConstraint(['gift_id'], ['gift_items.id'], ), - sa.ForeignKeyConstraint(['guest_id'], ['guests.id'], ), + sa.ForeignKeyConstraint(['gift_id'], ['gift_items.id'], ondelete="CASCADE"), + sa.ForeignKeyConstraint(['guest_id'], ['guests.id'], ondelete="CASCADE"), sa.PrimaryKeyConstraint('guest_id', 'gift_id') ) # ### end Alembic commands ### diff --git a/backend/app/models/gift.py b/backend/app/models/gift.py index d167e4b..2e16f71 100644 --- a/backend/app/models/gift.py +++ b/backend/app/models/gift.py @@ -68,10 +68,10 @@ class GiftItem(Base, UUIDMixin, TimestampMixin): category = relationship("GiftCategory", back_populates="gifts") reserved_by = relationship("Guest", secondary="guest_gifts", - back_populates="gifts") + back_populates="gifts", cascade='all') purchase_history = relationship("GiftPurchase", back_populates="gift_item", - order_by="desc(GiftPurchase.purchased_at)") + order_by="desc(GiftPurchase.purchased_at)", cascade='all, delete-orphan') def __repr__(self): return f""