136 lines
5.6 KiB
Python
136 lines
5.6 KiB
Python
"""empty message
|
|
|
|
Revision ID: a3b15766d9ab
|
|
Revises:
|
|
Create Date: 2018-11-26 18:32:35.322687
|
|
|
|
"""
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision = 'a3b15766d9ab'
|
|
down_revision = None
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade():
|
|
# ### commands auto generated by Alembic - please adjust! ###
|
|
op.create_table('proposal',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('date_created', sa.DateTime(), nullable=True),
|
|
sa.Column('status', sa.String(length=255), nullable=False),
|
|
sa.Column('title', sa.String(length=255), nullable=False),
|
|
sa.Column('brief', sa.String(length=255), nullable=False),
|
|
sa.Column('stage', sa.String(length=255), nullable=False),
|
|
sa.Column('content', sa.Text(), nullable=False),
|
|
sa.Column('category', sa.String(length=255), nullable=False),
|
|
sa.Column('target', sa.String(length=255), nullable=False),
|
|
sa.Column('payout_address', sa.String(length=255), nullable=False),
|
|
sa.Column('trustees', sa.String(length=1024), nullable=False),
|
|
sa.Column('deadline_duration', sa.Integer(), nullable=False),
|
|
sa.Column('vote_duration', sa.Integer(), nullable=False),
|
|
sa.Column('proposal_address', sa.String(length=255), nullable=True),
|
|
sa.PrimaryKeyConstraint('id'),
|
|
sa.UniqueConstraint('proposal_address')
|
|
)
|
|
op.create_table('user',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('email_address', sa.String(length=255), nullable=True),
|
|
sa.Column('account_address', sa.String(length=255), nullable=True),
|
|
sa.Column('display_name', sa.String(length=255), nullable=True),
|
|
sa.Column('title', sa.String(length=255), nullable=True),
|
|
sa.PrimaryKeyConstraint('id'),
|
|
sa.UniqueConstraint('account_address'),
|
|
sa.UniqueConstraint('email_address')
|
|
)
|
|
op.create_table('avatar',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('image_url', sa.String(length=255), nullable=True),
|
|
sa.Column('user_id', sa.Integer(), nullable=True),
|
|
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
|
|
sa.PrimaryKeyConstraint('id')
|
|
)
|
|
op.create_table('comment',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('date_created', sa.DateTime(), nullable=True),
|
|
sa.Column('content', sa.Text(), nullable=False),
|
|
sa.Column('proposal_id', sa.Integer(), nullable=False),
|
|
sa.Column('user_id', sa.Integer(), nullable=False),
|
|
sa.ForeignKeyConstraint(['proposal_id'], ['proposal.id'], ),
|
|
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
|
|
sa.PrimaryKeyConstraint('id')
|
|
)
|
|
op.create_table('email_verification',
|
|
sa.Column('user_id', sa.Integer(), nullable=False),
|
|
sa.Column('code', sa.String(length=255), nullable=False),
|
|
sa.Column('has_verified', sa.Boolean(), nullable=True),
|
|
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
|
|
sa.PrimaryKeyConstraint('user_id'),
|
|
sa.UniqueConstraint('code')
|
|
)
|
|
op.create_table('milestone',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('date_created', sa.DateTime(), nullable=False),
|
|
sa.Column('title', sa.String(length=255), nullable=False),
|
|
sa.Column('content', sa.Text(), nullable=False),
|
|
sa.Column('stage', sa.String(length=255), nullable=False),
|
|
sa.Column('payout_percent', sa.String(length=255), nullable=False),
|
|
sa.Column('immediate_payout', sa.Boolean(), nullable=True),
|
|
sa.Column('date_estimated', sa.DateTime(), nullable=False),
|
|
sa.Column('proposal_id', sa.Integer(), nullable=False),
|
|
sa.ForeignKeyConstraint(['proposal_id'], ['proposal.id'], ),
|
|
sa.PrimaryKeyConstraint('id')
|
|
)
|
|
op.create_table('proposal_contribution',
|
|
sa.Column('tx_id', sa.String(length=255), nullable=False),
|
|
sa.Column('date_created', sa.DateTime(), nullable=False),
|
|
sa.Column('proposal_id', sa.Integer(), nullable=False),
|
|
sa.Column('user_id', sa.Integer(), nullable=True),
|
|
sa.Column('from_address', sa.String(length=255), nullable=False),
|
|
sa.Column('amount', sa.String(length=255), nullable=False),
|
|
sa.ForeignKeyConstraint(['proposal_id'], ['proposal.id'], ),
|
|
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
|
|
sa.PrimaryKeyConstraint('tx_id')
|
|
)
|
|
op.create_table('proposal_team',
|
|
sa.Column('user_id', sa.Integer(), nullable=True),
|
|
sa.Column('proposal_id', sa.Integer(), nullable=True),
|
|
sa.ForeignKeyConstraint(['proposal_id'], ['proposal.id'], ),
|
|
sa.ForeignKeyConstraint(['user_id'], ['user.id'], )
|
|
)
|
|
op.create_table('proposal_update',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('date_created', sa.DateTime(), nullable=True),
|
|
sa.Column('proposal_id', sa.Integer(), nullable=False),
|
|
sa.Column('title', sa.String(length=255), nullable=False),
|
|
sa.Column('content', sa.Text(), nullable=False),
|
|
sa.ForeignKeyConstraint(['proposal_id'], ['proposal.id'], ),
|
|
sa.PrimaryKeyConstraint('id')
|
|
)
|
|
op.create_table('social_media',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('social_media_link', sa.String(length=255), nullable=True),
|
|
sa.Column('user_id', sa.Integer(), nullable=False),
|
|
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
|
|
sa.PrimaryKeyConstraint('id')
|
|
)
|
|
# ### end Alembic commands ###
|
|
|
|
|
|
def downgrade():
|
|
# ### commands auto generated by Alembic - please adjust! ###
|
|
op.drop_table('social_media')
|
|
op.drop_table('proposal_update')
|
|
op.drop_table('proposal_team')
|
|
op.drop_table('proposal_contribution')
|
|
op.drop_table('milestone')
|
|
op.drop_table('email_verification')
|
|
op.drop_table('comment')
|
|
op.drop_table('avatar')
|
|
op.drop_table('user')
|
|
op.drop_table('proposal')
|
|
# ### end Alembic commands ###
|