diff --git a/backend/app/db/cruddb/dbuser.py b/backend/app/db/cruddb/dbuser.py index 1a7d7ca..8a490fd 100644 --- a/backend/app/db/cruddb/dbuser.py +++ b/backend/app/db/cruddb/dbuser.py @@ -74,10 +74,11 @@ class dbuser(crudbase): db_user = super().get(db,user_id) if db_user: for role in db_user.roles: - db_user.roles.remove(role) + if role.id not in roles: + db_user.roles.remove(role) for roleid in roles: role = dbrole.get(db,roleid) - if role: + if role not in db_user.roles: db_user.roles.append(role) db.commit() db.refresh(db_user)