python - 包括额外的上下文值 Django Rest Framework

标签 python django django-rest-framework

我正在使用 django 休息框架。我需要在响应中传递一些额外的上下文值,但在响应中没有获得 extra_value。

class ResultRowView(generics.ListAPIView):
    serializer_class    = ResultRowSerializer
    permission_classes  = (AccountPermission, )

    def get_serializer(self, *args, **kwargs):
        context = {'extra_value': 5000}
        return self.serializer_class(*args, context=context, **kwargs)

    def get_queryset(self):
        qs = ResultRow.objects.none()
        pk = self.kwargs.get('pk', None)
        try:
            route = IncomingRoute.objects.get(account=self.request.user.account, pk=pk)
            qs = route.app_module.rows.all()
        except Exception, e:
            print 'result_row_query: ', e
        return qs

这里缺少什么?

最佳答案

您可以通过重写列表方法来做到这一点,例如:

def list(self, request, *args, **kwargs):
    response = super(ResultRowView, self).list(request, args, kwargs)
    response.data[ 'extra_value' ] = 5000
    return response

关于python - 包括额外的上下文值 Django Rest Framework,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33772984/

相关文章:

python - Supervisor - 启动 django 应用程序并通过 bash 文件保持其运行

python - 值错误 : dictionary update sequence element #0 has length 1; 2 is required Python Dictionary

python - django密码加密背后的逻辑是什么

python - Django 1.7 将以编程方式添加组的代码放在哪里?

javascript - 使用 Django render 将 JSON 传递给 JS

Django Rest Framework - 在 ViewSet 和 Serializer 上创建方法

django-rest-framework - DjangoRestFramework - 当 `get_queryset()` 由于对象不存在而无法获取对象时,我在哪里引发 404 错误?

django - swagger 中 POST 和 PUT 方法的有效负载

python - 控制字符的 CP437 解码是否损坏?

python - 字符串转 Json Python