/ migrations / versions / 2024_01_04_2209-b8881bdb716c_added_extra_fields.py
2024_01_04_2209-b8881bdb716c_added_extra_fields.py
 1  """Added extra fields.
 2  
 3  Revision ID: b8881bdb716c
 4  Revises: ccbb17aeda7c
 5  Create Date: 2024-01-04 22:09:34.417527
 6  """
 7  
 8  import sqlalchemy as sa
 9  from alembic import op
10  
11  # revision identifiers, used by Alembic.
12  revision = "b8881bdb716c"
13  down_revision = "ccbb17aeda7c"
14  branch_labels = None
15  depends_on = None
16  
17  
18  def upgrade() -> None:
19      """Perform the upgrade."""
20      op.create_table(
21          "vendor_field",
22          sa.Column("vendor_id", sa.Integer(), nullable=False),
23          sa.Column("key", sa.String(length=64), nullable=False),
24          sa.Column("value", sa.Text(), nullable=False),
25          sa.ForeignKeyConstraint(
26              ["vendor_id"],
27              ["vendor.id"],
28          ),
29          sa.PrimaryKeyConstraint("vendor_id", "key"),
30      )
31      op.create_index(op.f("ix_vendor_field_key"), "vendor_field", ["key"], unique=False)
32      op.create_index(op.f("ix_vendor_field_vendor_id"), "vendor_field", ["vendor_id"], unique=False)
33  
34      op.create_table(
35          "filament_field",
36          sa.Column("filament_id", sa.Integer(), nullable=False),
37          sa.Column("key", sa.String(length=64), nullable=False),
38          sa.Column("value", sa.Text(), nullable=False),
39          sa.ForeignKeyConstraint(
40              ["filament_id"],
41              ["filament.id"],
42          ),
43          sa.PrimaryKeyConstraint("filament_id", "key"),
44      )
45      op.create_index(op.f("ix_filament_field_filament_id"), "filament_field", ["filament_id"], unique=False)
46      op.create_index(op.f("ix_filament_field_key"), "filament_field", ["key"], unique=False)
47  
48      op.create_table(
49          "spool_field",
50          sa.Column("spool_id", sa.Integer(), nullable=False),
51          sa.Column("key", sa.String(length=64), nullable=False),
52          sa.Column("value", sa.Text(), nullable=False),
53          sa.ForeignKeyConstraint(
54              ["spool_id"],
55              ["spool.id"],
56          ),
57          sa.PrimaryKeyConstraint("spool_id", "key"),
58      )
59      op.create_index(op.f("ix_spool_field_key"), "spool_field", ["key"], unique=False)
60      op.create_index(op.f("ix_spool_field_spool_id"), "spool_field", ["spool_id"], unique=False)
61  
62  
63  def downgrade() -> None:
64      """Perform the downgrade."""
65      op.drop_index(op.f("ix_spool_field_spool_id"), table_name="spool_field")
66      op.drop_index(op.f("ix_spool_field_key"), table_name="spool_field")
67      op.drop_table("spool_field")
68  
69      op.drop_index(op.f("ix_filament_field_key"), table_name="filament_field")
70      op.drop_index(op.f("ix_filament_field_filament_id"), table_name="filament_field")
71      op.drop_table("filament_field")
72  
73      op.drop_index(op.f("ix_vendor_field_vendor_id"), table_name="vendor_field")
74      op.drop_index(op.f("ix_vendor_field_key"), table_name="vendor_field")
75      op.drop_table("vendor_field")