"""remove_unique_conversions_metrics Revision ID: b6fdb404c14c Revises: 83e45837b572 Create Date: 2022-02-08 10:16:24.065806 """ from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision = 'b6fdb404c14c' down_revision = '83e45837b572' branch_labels = None depends_on = None FIELDS = [ { "id": 15, "name": "Cost Per Unique Conversion", "type_id": 3, "format_id": 4, "objective_id": 8, "title": "Conversion", "subtitle": "Cost Per Unique", "total_name": "Total Cost Per Unique Conversion", "description": "Cost per unique conversion across all platforms.", "order_index": 300 }, { "id": 71, "name": "Unique Conversions", "type_id": 3, "format_id": 3, "objective_id": None, "title": "Conversions", "subtitle": "Unique", "total_name": "Total Unique Conversions", "description": "Sum of unique conversions across all platforms. Value may differ from other ad platforms because Decibel calculates this value by summing unique people each day instead of filtering for unique people across the entire date range.", "order_index": 200 } ] def get_metrics_field_table(bind): meta = sa.MetaData(bind=bind) meta.reflect() return meta.tables["MetricsField"] def upgrade(): bind = op.get_bind() metrics_field_table = get_metrics_field_table(bind) ids = [field.get("id") for field in FIELDS] op.execute( metrics_field_table.delete().where(metrics_field_table.c.id.in_(ids)) ) def downgrade(): bind = op.get_bind() metrics_field_table = get_metrics_field_table(bind) for field in FIELDS: op.execute( metrics_field_table.insert().values( **field ) )