There's an oddity in SQLAlchemy foreign key support when you try to get deletes to cascade.
Here's a typical parent/child relationship. As coded, deleting a parent cascades to its children. (Since we're using SQLite3, we need to intervene to enable foreign key support, but that's an extraneous detail here. The Flask bits are due to this being extracted from a larger app.)
As coded you can't ask a parent for its children. For that, you need to enable one of (1) or (2). Form (1) appears in