Правило зависимости пыталось очистить столбец первичного ключа в SQL-Alchemy при попытке удалить запись

У меня есть отношения много к одному междуUserownedshare стол иShare Таблица.

Когда я удаляюUserownedshare При входе из базы данных я получаю следующую ошибку:AssertionError: Dependency rule tried to blank-out primary key column 'share.ticker'

Это имеет смысл какticker поле в Userownedshare является внешним ключом вShare Таблица. Однако я не могу понять, как исправить эту ошибку. Я думаю, что я хочу установить каскадное удаление, когдаShare запись осиротела, но я не могу понять, как это сделать, я прочитал документацию, но у меня просто возникают разные типы ошибок, поэтому я думаю, что упускаю что-то тривиальное. Надеюсь, кто-то может помочь, спасибо!


Вот мой код:

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])

Ответы на вопрос(1)

Ваш ответ на вопрос