在 Django rest-framework 中只从数据库返回一个响应

returning only one response from the database in Django rest-framework

我正在尝试 return 使用这种方法 SQL 的所有结果我能够检索它,但它是静态的。

我试过循环 result_set 但它 return 只是 5 个响应中的第一个响应,但我想 return 所有 5 个响应 在这里,我尝试过的

预期响应:

[{"Value8":"Avail-On queue","Value1":"Avail-On queue"},{"Value8":"Coaching","Value1":"Coaching"},{"Value8":"Huddle","Value1":"Huddle"},{"Value8":"Outage","Value1":"Outage"},{"Value8":"Training","Value1":"Training"}]

views.py:

@api_view(['GET'])
def GetClaimsActivity(request, UserId):
    if request.method == 'GET':
  
        cursor = connection.cursor()
        cursor.execute('EXEC [dbo].[sp_GetClaimsPlusActivity] @UserId=%s', (UserId,))
        result_set = cursor.fetchall()

        data = []
        # for row in result_set:
               #data.append({
                    #'Value8':row[0],
                    #'Value1':row[0],
            #})
            #return Reponse(data)


        data = []
              
        data.append({
                    'Value8':result_set[0][0],
                    'Value1':result_set[0][0],
            })
        data.append({
                   'Value8':result_set[1][0],
                    'Value1':result_set[1][0],
                })
        data.append({
                   'Value8':result_set[2][0],
                    'Value1':result_set[2][0],
                })
        
        data.append({
                   'Value8':result_set[3][0],
                    'Value1':result_set[3][0],
                })

        data.append({
                   'Value8':result_set[4][0],
                    'Value1':result_set[4][0],
                })
        
        return Response(data)

试试这个

@api_view(['GET'])
def GetClaimsActivity(request, UserId):
    if request.method == 'GET':
  
        cursor = connection.cursor()
        cursor.execute('EXEC [dbo].[sp_GetClaimsPlusActivity] @UserId=%s', (UserId,))
        result_set = cursor.fetchall()

        data = []
        for i in range(len(result_set)):
               data.append({
                    'Value8':result_set[i][0],
                    'Value1':result_set[i][0],
            })
        return Reponse(data)```