태코놀로지

'WSGIRequest' object has no attribute 'user' Django admin 본문

Python3/Django

'WSGIRequest' object has no attribute 'user' Django admin

태코놀로지 2016. 12. 29. 01:56

'WSGIRequest' object ahs no attribute 'user' Django admin

Django Web Framework 어드민페이지 에러 해결법


 Django(장고) 프로젝트를 재시작하면서 발생한 에러인데, 이전과 동일한 방법으로 진행했음에도 이런 에러가 발생하면 난감하다. 아마도 장고 버전에 따른 문제라고 생각하는데, 의외로 해결방법은 코드상에서 전혀 건드리지 않았던 settings.py 파일의 미들웨어(MIDDLEWARE) 부분에서 찾았다.


 에러 화면은 장고 프로젝트와 슈퍼유저를 생성한 다음, APP을 제작하고 settings.py 파일에 등록한 다음 runserver 명령어를 통해 어드민 페이지에 접속할 때 다음과 같은 메시지를 던지며 발생한다.



 처음 에러를 발견했을 때에는 슈퍼유저 생성과정에서 문제가 발생했으리라 짐작했지만, 전혀 아니었다. 구글링 결과 해결방법을 쉽게 찾을 수 있었는데, 추후에 동일한 에러가 발생했을 때 빠르게 해결하기 위해서 블로그에 흔적을 남겨본다. 간단히 말해서 아래의 그림과 같이 settings.py 파일에 미들웨어를 다음과 같이 변경해주면 된다. 


MIDDLEWARE → MIDDLEWARE_CLASSES



 이처럼 무척이나 간단한 방법으로 에러를 해결할 수 있었는데, 의외로 이전까지 장고 프로젝트를 진행하면 발생한 적이 없는, 초면인 에러였다. 아마도 이전에 쓰는 버전은 가상환경에서 구동을 했었는데, 개발환경이 변경되면서 장고 버전을 기존과 다른 버전을 받았던 것이 화근인 듯 하다. 앞으로 발생한 에러에 대해서는 추측을 통해서 접근하기보다는 로그와 구글링을 통해서 해결하는 편이 효율적이라는 것을 배웠다.

Comments