如何jundge request.user是Django中的AnonymousUser?
class UserListAPIView(ListAPIView):
serializer_class = UserSerializer
permission_classes = []
queryset = User.objects.all()
def get(self, request):
if request.user:
print("not AnonymousUser" ) # there I tried
return Response(data="200", status=HTTP_200_OK)
您看,我尝试request.user
检查用户是否存在,但失败了,请始终打印not AnonymousUser
。
如何检查?
答案 0 :(得分:3)
您应该使用用户的is_authenticated
方法检查用户是否登录:
if request.user.is_authenticated():
# Do something for logged-in users.
else:
# Do something for anonymous users.
感谢@Alasdair,在Django v1.10版本之后,is_authenticated
现在是一个属性。您可以轻松使用request.user.is_authenticated
进行检查。