我们最近继承了一个Django项目,这对我来说是一个新的领域。在调试问题时,我遇到过我20年编程中从未见过的事情。
我有一个API(用Django编写),它有多个端点(通常的用户配置文件)。当我发出GET请求时,我得到了我期望的格式的响应,但是每次发出请求时,数据子集都是不同的。
我在新用户注册后立即附加了3个Postman请求的屏幕截图,这些屏幕截图相隔几秒钟而没有更改数据。我可以不断提出请求并循环通过3个州。
这是端点的代码:
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实例