From 445d5c088ed5aca2205a28e909278d0c25c86d66 Mon Sep 17 00:00:00 2001 From: Goffi Date: Tue, 28 Nov 2023 17:35:20 +0100 Subject: [PATCH] core (memory/sqla_mapping): `delete-orphan` in History: add `cascade=delete-orphan` to History's `messages`, `subjects` and `thread`, to make modification of those attributes easier. --- libervia/backend/memory/sqla_mapping.py | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/libervia/backend/memory/sqla_mapping.py b/libervia/backend/memory/sqla_mapping.py index 8b726248..e1a66371 100644 --- a/libervia/backend/memory/sqla_mapping.py +++ b/libervia/backend/memory/sqla_mapping.py @@ -299,10 +299,24 @@ class History(Base): extra = Column(LegacyPickle) profile = relationship("Profile") - messages = relationship("Message", backref="history", passive_deletes=True) - subjects = relationship("Subject", backref="history", passive_deletes=True) + messages = relationship( + "Message", + backref="history", + cascade="all, delete-orphan", + passive_deletes=True + ) + subjects = relationship( + "Subject", + backref="history", + cascade="all, delete-orphan", + passive_deletes=True + ) thread = relationship( - "Thread", uselist=False, back_populates="history", passive_deletes=True + "Thread", + uselist=False, + back_populates="history", + cascade="all, delete-orphan", + passive_deletes=True ) __mapper_args__ = {"version_id_col": version_id}