Basisimplementierung für Mailversandt.
This commit is contained in:
parent
8505e9217a
commit
531b9cb10e
14 changed files with 520 additions and 41 deletions
28
migrations/versions/20260116_create_messages.py
Normal file
28
migrations/versions/20260116_create_messages.py
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
from sqlalchemy.dialects import postgresql
|
||||
|
||||
# revision identifiers:
|
||||
revision = "20260116_create_messages"
|
||||
down_revision = None # oder deine letzte Revision
|
||||
|
||||
def upgrade():
|
||||
op.create_table(
|
||||
"messages",
|
||||
sa.Column("id", postgresql.UUID(as_uuid=True), primary_key=True),
|
||||
sa.Column("mailbox_id", postgresql.UUID(as_uuid=True), nullable=False),
|
||||
sa.Column("message_id", sa.String(512), nullable=True),
|
||||
sa.Column("subject", sa.String(2048), nullable=True),
|
||||
sa.Column("from_addr", sa.String(2048), nullable=True),
|
||||
sa.Column("to_addr", sa.String(4096), nullable=True),
|
||||
sa.Column("date_header", sa.TIMESTAMP(timezone=True), nullable=True),
|
||||
sa.Column("received_at", sa.TIMESTAMP(timezone=True), nullable=False),
|
||||
sa.Column("raw_eml", sa.LargeBinary(), nullable=False),
|
||||
)
|
||||
op.create_index("ix_messages_date", "messages", ["date_header"])
|
||||
op.create_index("ix_messages_message_id", "messages", ["message_id"])
|
||||
op.create_index("ix_messages_mailbox", "messages", ["mailbox_id"])
|
||||
|
||||
def downgrade():
|
||||
op.drop_table("messages")
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue