home
·
contact
·
privacy
projects
/
plomtask
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Always check if item is saved before removal attempt.
[plomtask]
/
plomtask
/
db.py
diff --git
a/plomtask/db.py
b/plomtask/db.py
index 3a661d37758f579a9cac09dc90b86f07f0572e04..0509492473c44730ea70fa3e793775cd892e2866 100644
(file)
--- 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."""
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_)
self.uncache()
db_conn.delete_where(self.table_name, 'id', self.id_)