mirror of
https://github.com/apache/superset.git
synced 2024-09-19 12:09:42 -04:00
b634d03ac3
* Introducing more security features * Many to many owners for slices and dashboards * Slices are filtered to only slices that the user has access to * Adding unit tests
39 lines
1.1 KiB
Python
39 lines
1.1 KiB
Python
"""owners_many_to_many
|
|
|
|
Revision ID: 4fa88fe24e94
|
|
Revises: b4456560d4f3
|
|
Create Date: 2016-04-15 17:58:33.842012
|
|
|
|
"""
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision = '4fa88fe24e94'
|
|
down_revision = 'b4456560d4f3'
|
|
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
|
|
def upgrade():
|
|
op.create_table('dashboard_user',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('user_id', sa.Integer(), nullable=True),
|
|
sa.Column('dashboard_id', sa.Integer(), nullable=True),
|
|
sa.ForeignKeyConstraint(['dashboard_id'], [u'dashboards.id'], ),
|
|
sa.ForeignKeyConstraint(['user_id'], [u'ab_user.id'], ),
|
|
sa.PrimaryKeyConstraint('id'),
|
|
)
|
|
op.create_table('slice_user',
|
|
sa.Column('id', sa.Integer(), nullable=False),
|
|
sa.Column('user_id', sa.Integer(), nullable=True),
|
|
sa.Column('slice_id', sa.Integer(), nullable=True),
|
|
sa.ForeignKeyConstraint(['slice_id'], [u'slices.id'], ),
|
|
sa.ForeignKeyConstraint(['user_id'], [u'ab_user.id'], ),
|
|
sa.PrimaryKeyConstraint('id'),
|
|
)
|
|
|
|
|
|
def downgrade():
|
|
op.drop_table('slice_user')
|
|
op.drop_table('dashboard_user')
|