为什么Django会以不同的方式回应同一个请求

时间:2016-12-31 01:52:40

标签: python django api

我们最近继承了一个Django项目,这对我来说是一个新的领域。在调试问题时,我遇到过我20年编程中从未见过的事情。

我有一个API(用Django编写),它有多个端点(通常的用户配置文件)。当我发出GET请求时,我得到了我期望的格式的响应,但是每次发出请求时,数据子集都是不同的。

我在新用户注册后立即附加了3个Postman请求的屏幕截图,这些屏幕截图相隔几秒钟而没有更改数据。我可以不断提出请求并循环通过3个州。

Missing Nothing

Missing search criteria

Missing profile data and search criteria

这是端点的代码:

class UserProfile(RetrieveUpdateDestroyAPIView):
    serializer_class = SRUserSerializer
    queryset = SRUser.objects
    permission_classes = (IsAuthenticated,)

    def retrieve(self, request, *args, **kwargs):
        instance = request.user
        instance.not_now_count = instance.not_now.all().count()
        serializer = self.get_serializer(instance)
        return Response(serializer.data)

我唯一可以假设的是序列化程序正在向数据库发出额外的数据请求,但在必须返回之前返回数据。有没有办法识别这个?我还能提供什么来帮助确定问题?

这是使用MySQL作为数据存储在AWS上运行的Django 1.9实例

0 个答案:

没有答案