的返回值我有在Django的數據庫連接的一個小功能如下:檢查函數在Python
def db_connection(query_name):
try:
cursor = connection.cursor()
cursor.execute(query_name)
descr = cursor.description
rows = cursor.fetchall()
result = [dict(zip([column[0] for column in descr], row)) for row in rows]
return result
except Exception as e:
return e
finally:
cursor.close()
此功能在我的Django的REST框架功能視圖用於執行SQL查詢。一般的語法如下:
@api_view(['GET'])
def foo_bar(request):
....
....
....
query1 = "Select name from table"
result = db_connection(query1)
return Response(result, status=status.HTTP_200_OK)
不過,我需要的是改變取決於我db_connection功能即返回值在響應元組的狀態值返回一個200 OK,如果別人發生無異常500.如何檢查函數的返回值離子是一個例外?
Django有一個很好的訪問數據庫的框架..有沒有一個原因,你沒有使用它? – Sayse
我很好意識到通過傳遞ORM..like手動預防SQL注入的手段來命名其中的一個頭疼..但是,這個應用程序是一個分析應用程序,Django ORM對我來說不夠好需要,因此原始的SQL .. – Amistad