diff --git a/app/models.py b/app/models.py index 810518d71104f784576d34245d139ff9d86e6758..43f9e90d73202e5f8e190e7c2651f3e4b196e929 100644 --- a/app/models.py +++ b/app/models.py @@ -241,10 +241,7 @@ class User(UserMixin, db.Model): ''' Delete the user and its corpora and jobs from database and filesystem. ''' - for job in self.jobs: - job.delete() - for corpus in self.corpora: - corpus.delete() + db.session.delete(self) db.session.commit() @@ -365,10 +362,7 @@ class Job(db.Model): ''' Delete the job and its inputs and results from the database. ''' - for input in self.inputs: - db.session.delete(input) - for result in self.results: - db.session.delete(result) # TODO: shouldn't this happen through the cascade option? + db.session.delete(self) db.session.commit() @@ -528,8 +522,6 @@ class Corpus(db.Model): 'files': {file.id: file.to_dict() for file in self.files}} def delete(self): - for corpus_file in self.files: - db.session.delete(corpus_file) db.session.delete(self) db.session.commit()