+ db_conn.exec('DELETE FROM todo_fulfills WHERE todo = ?', (self.id_,))
+ for condition in self.fulfills:
+ if condition.id_ is None:
+ raise NotFoundException('Fulfilled Condition of Todo '
+ 'without ID (not saved?)')
+ db_conn.exec('INSERT INTO todo_fulfills VALUES (?, ?)',
+ (self.id_, condition.id_))
+ db_conn.exec('DELETE FROM todo_undoes WHERE todo = ?', (self.id_,))
+ for condition in self.undoes:
+ if condition.id_ is None:
+ raise NotFoundException('Undone Condition of Todo '
+ 'without ID (not saved?)')
+ db_conn.exec('INSERT INTO todo_undoes VALUES (?, ?)',
+ (self.id_, condition.id_))
+ db_conn.exec('DELETE FROM todo_conditions WHERE todo = ?', (self.id_,))
+ for condition in self.conditions:
+ if condition.id_ is None:
+ raise NotFoundException('Condition of Todo '
+ 'without ID (not saved?)')
+ db_conn.exec('INSERT INTO todo_conditions VALUES (?, ?)',
+ (self.id_, condition.id_))