Skip to content
This repository has been archived by the owner on Nov 13, 2024. It is now read-only.

Commit

Permalink
Merge pull request #960 from Veda-Gogineni/884_delete_keyword
Browse files Browse the repository at this point in the history
884: Letting admin to delete keyword
  • Loading branch information
naknomum authored Jan 23, 2024
2 parents 1e65b96 + b7b1dd7 commit 813a459
Show file tree
Hide file tree
Showing 4 changed files with 80 additions and 2 deletions.
4 changes: 3 additions & 1 deletion app/modules/annotations/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,9 @@ class AnnotationKeywords(db.Model, HoustonModel):
annotation_guid = db.Column(
db.GUID, db.ForeignKey('annotation.guid'), primary_key=True
)
keyword_guid = db.Column(db.GUID, db.ForeignKey('keyword.guid'), primary_key=True)
keyword_guid = db.Column(
db.GUID, db.ForeignKey('keyword.guid', ondelete='CASCADE'), primary_key=True
)
annotation = db.relationship('Annotation', back_populates='keyword_refs')
keyword = db.relationship('Keyword')

Expand Down
4 changes: 3 additions & 1 deletion app/modules/assets/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,9 @@

class AssetTags(db.Model, HoustonModel):
asset_guid = db.Column(db.GUID, db.ForeignKey('asset.guid'), primary_key=True)
tag_guid = db.Column(db.GUID, db.ForeignKey('keyword.guid'), primary_key=True)
tag_guid = db.Column(
db.GUID, db.ForeignKey('keyword.guid', ondelete='CASCADE'), primary_key=True
)
asset = db.relationship('Asset', back_populates='tag_refs')
tag = db.relationship('Keyword')

Expand Down
1 change: 1 addition & 0 deletions app/modules/users/permissions/rules.py
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,7 @@
'is_admin',
],
('Keyword', AccessOperation.READ): ['is_active'],
('Keyword', AccessOperation.DELETE): ['is_admin'],
('Sighting', AccessOperation.WRITE_INTERNAL): ['is_internal'],
('Sighting', AccessOperation.READ_PRIVILEGED): ['is_staff'],
('Sighting', AccessOperation.READ): ['is_admin'],
Expand Down
73 changes: 73 additions & 0 deletions migrations/versions/dc91b517a7a4_.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# -*- coding: utf-8 -*-
"""empty message
Revision ID: dc91b517a7a4
Revises: 53b0fec87272
Create Date: 2024-01-22 22:51:34.690766
"""

from alembic import op

# revision identifiers, used by Alembic.
revision = 'dc91b517a7a4'
down_revision = '53b0fec87272'


def upgrade():
"""
Upgrade Semantic Description:
ENTER DESCRIPTION HERE
"""
# ### commands auto generated by Alembic - please adjust! ###
with op.batch_alter_table('annotation_keywords', schema=None) as batch_op:
batch_op.drop_constraint(
'fk_annotation_keywords_keyword_guid_keyword', type_='foreignkey'
)
batch_op.create_foreign_key(
batch_op.f('fk_annotation_keywords_keyword_guid_keyword'),
'keyword',
['keyword_guid'],
['guid'],
ondelete='CASCADE',
)

with op.batch_alter_table('asset_tags', schema=None) as batch_op:
batch_op.drop_constraint('fk_asset_tags_tag_guid_keyword', type_='foreignkey')
batch_op.create_foreign_key(
batch_op.f('fk_asset_tags_tag_guid_keyword'),
'keyword',
['tag_guid'],
['guid'],
ondelete='CASCADE',
)

# ### end Alembic commands ###


def downgrade():
"""
Downgrade Semantic Description:
ENTER DESCRIPTION HERE
"""
# ### commands auto generated by Alembic - please adjust! ###
with op.batch_alter_table('asset_tags', schema=None) as batch_op:
batch_op.drop_constraint(
batch_op.f('fk_asset_tags_tag_guid_keyword'), type_='foreignkey'
)
batch_op.create_foreign_key(
'fk_asset_tags_tag_guid_keyword', 'keyword', ['tag_guid'], ['guid']
)

with op.batch_alter_table('annotation_keywords', schema=None) as batch_op:
batch_op.drop_constraint(
batch_op.f('fk_annotation_keywords_keyword_guid_keyword'), type_='foreignkey'
)
batch_op.create_foreign_key(
'fk_annotation_keywords_keyword_guid_keyword',
'keyword',
['keyword_guid'],
['guid'],
)

# ### end Alembic commands ###

0 comments on commit 813a459

Please sign in to comment.