def delete(self, request, table_name=None):
"""Delete endpoint.
:param request: Sanic Request.
:param table_name: Name of the table to access.
"""
if not check_csrf(request):
return json({'message': 'access denied'}, status=403)
waf = get_jawaf()
table = registry.get(table_name)
target_id = request.json.get('id', None)
if not target_id:
return json({'message': 'no id'}, status=400)
if not table:
return json({'message': 'access denied'}, status=403)
async with Connection(table['database']) as con:
stmt = table['table'].delete().where(table['table'].c.id==target_id)
await con.execute(stmt)
await add_audit_action('delete', 'admin', table_name, request['session']['user'])
return json({'message': 'success'}, status=200)
评论列表
文章目录