Permission fix
This commit is contained in:
17
clear_permissions.sql
Normal file
17
clear_permissions.sql
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
-- Clear all permissions and role_permissions
|
||||||
|
-- Run this BEFORE running seed_permissions_rbac.py
|
||||||
|
|
||||||
|
BEGIN;
|
||||||
|
|
||||||
|
-- Delete all role_permission mappings
|
||||||
|
DELETE FROM role_permissions;
|
||||||
|
|
||||||
|
-- Delete all permissions
|
||||||
|
DELETE FROM permissions;
|
||||||
|
|
||||||
|
COMMIT;
|
||||||
|
|
||||||
|
-- Verify they're empty
|
||||||
|
SELECT 'Permissions cleared:' as message, COUNT(*) as count FROM permissions
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'Role-permissions cleared:', COUNT(*) FROM role_permissions;
|
||||||
@@ -168,11 +168,24 @@ def seed_permissions():
|
|||||||
|
|
||||||
# Step 1: Clear existing permissions and role_permissions
|
# Step 1: Clear existing permissions and role_permissions
|
||||||
print("\n📦 Clearing existing permissions and role assignments...")
|
print("\n📦 Clearing existing permissions and role assignments...")
|
||||||
deleted_rp = db.query(RolePermission).delete()
|
|
||||||
deleted_p = db.query(Permission).delete()
|
# Use raw SQL to ensure complete deletion
|
||||||
|
from sqlalchemy import text
|
||||||
|
db.execute(text("DELETE FROM role_permissions"))
|
||||||
db.commit()
|
db.commit()
|
||||||
print(f"✓ Cleared {deleted_rp} role-permission mappings")
|
db.execute(text("DELETE FROM permissions"))
|
||||||
print(f"✓ Cleared {deleted_p} permissions")
|
db.commit()
|
||||||
|
|
||||||
|
# Verify they're cleared
|
||||||
|
rp_count = db.execute(text("SELECT COUNT(*) FROM role_permissions")).scalar()
|
||||||
|
p_count = db.execute(text("SELECT COUNT(*) FROM permissions")).scalar()
|
||||||
|
|
||||||
|
print(f"✓ Cleared role-permission mappings (verified: {rp_count} remaining)")
|
||||||
|
print(f"✓ Cleared permissions (verified: {p_count} remaining)")
|
||||||
|
|
||||||
|
if rp_count > 0 or p_count > 0:
|
||||||
|
print(f"\n⚠️ WARNING: Tables not fully cleared! Stopping.")
|
||||||
|
return
|
||||||
|
|
||||||
# Step 2: Create permissions
|
# Step 2: Create permissions
|
||||||
print(f"\n📝 Creating {len(PERMISSIONS)} permissions...")
|
print(f"\n📝 Creating {len(PERMISSIONS)} permissions...")
|
||||||
|
|||||||
Reference in New Issue
Block a user