В Flask SQLAlchemy (и обычном SQLAlchemy) вы можете иметь такой столбец:
Код: Выделить всё
class Character(db.model):
background_id = db.Column(db.Integer, db.ForeignKey('backgrounds.id'))
Код: Выделить всё
def upgrade():
op.create_foreign_key(None, 'characters', 'backgrounds', ['background_id'], ['id'])
def downgrade():
op.drop_constraint(None, 'characters', type_='foreignkey')
Вы можете изменить это каждый раз, когда создаете миграцию, вот так:
Код: Выделить всё
def upgrade():
op.create_foreign_key('fk_characters_backgrounds', 'characters', 'backgrounds', ['background_id'], ['id'])
def downgrade():
op.drop_constraint('fk_characters_backgrounds', 'characters', type_='foreignkey')
Но если вы похожи на меня, вам не нужно помнить об этом каждый раз, когда вы автоматически создаете ревизия с помощью внешнего ключа.
Итак, вопрос в том, как мы можем сделать это автоматически?
Подробнее здесь: https://stackoverflow.com/questions/714 ... ting-migra