Я использую Flask-Migrate для проекта, в котором целевая база данных совместима с MySQL Aurora.
Я добавил полнотекстовый индекс в модель, используя Модуль полнотекстового поиска SQLAlchemy Менжуо :
class Post(db.Model, FullText, Serializable):
__tablename__ = 'post'
__fulltext_columns__ = ('description', 'text')
id = db.Column(db.String(10), primary_key=True)
description = db.Column(db.String(256))
.
.
.
Теперь, когда я использовал Flask-Migrate для генерации миграции, полнотекстовый индекс не был выбран автоматически.Мне хорошо известен тот факт, что Flask-Migrate не подхватывает все , и что вам необходимо вручную добавить несколько вещей в сценарии миграции.
Например, я знаюкак вручную вставить такие строки, как
op.add_column(...)
op.create_unique_constraint(...)
op.create_index(...)
внутри метода upgrade
в сгенерированной миграции.Однако, когда я посмотрел документацию create_index
для Alembic , я не увидел поддержки создания полнотекстового индекса.Я вижу параметр unique
для уникальных индексов, но ничего для полнотекстового индекса.
Итак, я упускаю способ сделать это непосредственно в Alembic (возможно, с помощью команд SQLAlchemy)?Или мне придется написать прямой SQL?Я не хотел бы делать последнее, и я никогда не делал этого раньше.Если это необходимо, как это работает?