【发布时间】:2020-01-15 10:28:06
【问题描述】:
在我的 Django 项目中,我有一个使用 Django Rest Framework 的 APIView 构建的公共 API 端点。它不需要知道有关用户的任何信息。尽管如此,Django 还是自动从数据库中获取会话和用户。有没有办法不这样做,因为它会导致两次不必要的数据库命中?
代码如下:
class TermListView(APIView):
permission_classes = ()
def get(self, request, format=None):
qs = Term.objects.all().only('original_word')
return Response([term.original_word for term in qs])
【问题讨论】:
-
您如何确定您正在为会话和用户访问数据库?同样的调试工具应该能够向您显示该数据库查询的堆栈,然后您可以消除导致它的原因。
-
我正在使用 Django 调试工具栏。感谢您的快速重播;我找到了解决方案并将其发布为答案。
标签: django django-rest-framework django-authentication