Flask Migrate ondelete Каскад не работает
Я использую колбу мигрировать для создания таблиц в базе данных MySQL. Когда я удаляю запись актива или данных обучения, я хочу, чтобы запись assets_training_data_xref была удалена. Когда я запускаю миграцию, сгенерированные таблицы SQL не имеют "ON DELETE CASCADE". Что я делаю неправильно? Я не планирую использовать код SQLAlchemy для обновления таблицы (просто сырой SQL), в этом проблема?
Вот мои таблицы:
class Assets(db.Model):
__tablename__ = "assets"
asset_id = db.Column(db.Integer, primary_key=True)
asset_name = db.Column(db.String(150), unique=True, nullable=False)
asset_desc = db.Column(db.Text)
class Training_Data(db.Model):
__tablename__ = "training_data"
train_id = db.Column(db.BigInteger, primary_key=True)
train_desc = db.Column(db.Text)
train_classification = db.Column(db.Text)
train_updated = db.Column(db.TIMESTAMP, onupdate=func.utc_timestamp())
class Assets_Training_Data_Xref(db.Model):
__tablename__ = "assets_training_data_xref"
fk_asset_id = db.Column(db.ForeignKey("assets.asset_id",
ondelete="CASCADE"), primary_key=True, index=True)
fk_train_id = db.Column(db.ForeignKey("training_data.train_id",
ondelete="CASCADE"), primary_key=True, index=True)