X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=plomtask%2Fdb.py;fp=plomtask%2Fdb.py;h=0509492473c44730ea70fa3e793775cd892e2866;hb=9c68e4b443a695652f2ba3acae126ad02e3f6ffa;hp=3a661d37758f579a9cac09dc90b86f07f0572e04;hpb=9ad40c43627334d7294c07bf55d196dd6760cfde;p=plomtask diff --git a/plomtask/db.py b/plomtask/db.py index 3a661d3..0509492 100644 --- a/plomtask/db.py +++ b/plomtask/db.py @@ -261,6 +261,7 @@ class BaseModel(Generic[BaseModelId]): def remove(self, db_conn: DatabaseConnection) -> None: """Remove from DB and cache.""" - assert isinstance(self.id_, int | str) + if self.id_ is None or self.__class__.get_cached(self.id_) is None: + raise HandledException('cannot remove unsaved item') self.uncache() db_conn.delete_where(self.table_name, 'id', self.id_)