'AnonymousUser' object has no attribute 'is_admin'

后端 未结 2 587
旧巷少年郎
旧巷少年郎 2021-01-28 22:42

I am using Django 2.2 and Python 3.6.

I deployed a Django REST server using AWS EB, but I get the following error.

It works fine on the local side, but an error oc

相关标签:
2条回答
  • 2021-01-28 22:59

    The first problem is that AnonymousUser does not have an is_admin property in django. You can maybe check is_superuser or check if your user is authenticated before calling is_admin on it. See How to check if a user is logged in (how to properly use user.is_authenticated)? for that.

    About the difference between local and distant, I would guess that you're logged in on your local app but not on your distant app. This is why AnonymousUser gets returned by request.user on your distant app.

    0 讨论(0)
  • 2021-01-28 23:05

    The problem I encountered was the same as the cause in this question.

    This is also a known issue on the AWS forums.

    You can fix it in the following way:

    # .ebextensions/wsgihacks.config
    
    files:
      "/etc/httpd/conf.d/wsgihacks.conf":
        mode: "000644"
        owner: root
        group: root
        content: |
          WSGIPassAuthorization on
    

    Original thread: https://forums.aws.amazon.com/message.jspa?messageID=376244

    0 讨论(0)
提交回复
热议问题