I have a lot of relationships between the Userownedshare table and the Share table.
When I delete a Userownedshare entry from the database, I get the following error: AssertionError: Dependency rule tried to blank-out primary key column 'share.ticker'
This makes sense since the ticker field in Userownedshare is a foreign key in the Share table. However, I cannot decide how to fix this error. I think I want to configure cascading deletion when the Share record is played, but I canβt figure out how to do it, I read the documentation, but I just ended up with different types of errors, so I think I'm missing something trivial . Hope someone can help, thanks!
Here is my code:
class Userownedshare(db.Model): id = db.Column(db.Integer, primary_key=True) ticker = db.Column(db.String(20), db.ForeignKey('share.ticker')) user = db.Column(db.String, db.ForeignKey('user.username')) quantity = db.Column(db.Integer, nullable=False) dividends = db.Column(db.Float, server_default="0.0") triggerlevel = db.Column(db.Integer) smsalert = db.Column(db.Boolean) emailalert = db.Column(db.Boolean) portfolioid = db.Column(db.String(50)) name = db.relationship('Share', backref='userownedshare' , foreign_keys=[ticker]) class Share(db.Model): id = db.Column(db.Integer) name = db.Column(db.String(50), nullable=False) ticker = db.Column(db.String(50), db.ForeignKey('userownedshare.ticker'), primary_key=True) tickermatch = db.relationship('Userownedshare', backref='share', foreign_keys=[ticker])
source share