def user_delete(request):
"""
Deletes a user and their group memberships
Their plugins will be handed over to the user that deleted them
:param request:
:return:
"""
# make sure the user actually exists
user_id = request.matchdict['user_id']
query = request.db_session.query(LedUser).filter(LedUser.id == user_id)
user = query.first()
if user is None:
return exc.HTTPBadRequest("No such user exists")
logged_in_user = request.user
for plugin in request.db_session.query(LedPlugin).filter(LedPlugin.user == user).all():
plugin.user_id = logged_in_user.id
request.db_session.query(LedGroupUser).filter(LedGroupUser.led_user == user).delete()
query.delete()
log(request, 'Deleted user '+user.email)
return exc.HTTPFound(location='/users')
评论列表
文章目录