tl; dr: Как мне заставить Алембика понять и генерировать SQL для материализованных представлений, созданных в SQLALCHEMY? Чтобы получить материализованный взгляд, работая с SQLalchemy, я последовал хорошим посту по этой теме. Я использовал его в значительной степени, с лишь несколькими незначительными дивергентами (в статье также используется Flask-Sqlalchemy, однако в полном примере кода вместо этого используется декларативная база Sqlalchemy). < /P>
class ActivityView(db.Model):
__table__ = create_materialized_view(
'activity_view',
db.select([
Activity.id.label('id'),
Activity.name.label('name'),
Activity.start_date.label('start_date'),
]).where(
db.and_(
Activity.start_date != None,
Activity.start_date
Методы create_materialized_view < /code> и rewresh_materialized_view < /code> взяты прямо из сообщения в блоге. Это представление о серии операций по алембике во время миграции ? Когда Alembic работает, он ничего не делает с видом. Итак, я в конечном итоге делаю копирование SQL, который испускают тесты для материализованного представления в файл миграции /версий Alembic, и просто в конечном итоге выполняет это напрямую как: < /p>
op.execute(activities_view_sql)
< /code>
Аналогично, я выполняю то же прямое прямое выполнение SQL при создании уникального индекса в материализованном представлении. он меняется, Алембик будет знать, как обновить представление? < /p>
Большое спасибо! < /p>
Подробнее здесь: https://stackoverflow.com/questions/368 ... lized-view
Алембическая генерация материализованного представления ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение