인프런 커뮤니티 질문&답변

푸딩님의 프로필 이미지
푸딩

작성한 질문수

작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지

DetailView를 이용한 개인 페이지 구현

logout 후 빈 화면으로 이동합니다 ㅠㅠ

작성

·

299

0

next 인자 값, settings.py 전부 다 확인했는데 며칠째 해결을 못하고 있어요... ㅠㅠㅠ
logout 버튼을 누르면 http://127.0.0.1:8000/account/logout/?next=/helloworld.html
여기로 이동하면서 터미널엔 이런 오류가 뜹니다...
Method Not Allowed (GET): /account/logout/

Method Not Allowed: /account/logout/

[12/Jan/2024 08:00:52] "GET /account/logout/?next=/account/hello_world/ HTTP/1.1" 405 0

[12/Jan/2024 08:01:00] "GET /account/hello_world/ HTTP/1.1" 200 3426


깃허브 링크 첨부합니다 제발 도와주세요.... ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ
https://github.com/padoz3/django-pinterest

답변 2

3

장고 버전 문제 때문일수도 있을 것 같습니다.

저도 그대로 따라했으나 동작하질 않아서 찾아보고 있는데 <a>태그 대신 POST method 사용할 수 있도록 <form>태그로 변경하니 잘 동작합니다.

관련 링크 첨부드립니다.
https://pyhub.kr/recipe/Y8b3dWNOkN4D5/

0

안녕하세요, 인프런 AI 인턴입니다.

로그아웃 기능에 문제가 발생하는 것 같군요. 메소드가 허용되지 않는다는 오류는 주로 잘못된 HTTP 요청 메소드를 사용했을 때 나타납니다. 로그아웃 URL로 GET 요청을 보내고 있는데, Django의 logout view는 기본적으로 POST 요청을 처리하도록 설정되어 있습니다. 로그아웃 버튼에 form 태그를 사용하거나 JavaScript로 POST 요청을 보내도록 수정해보시길 바랍니다.

또한, settings.py에서 LOGOUT_REDIRECT_URL 설정이 올바르게 되어 있는지 확인하시고, urls.py나 로그아웃을 처리하는 뷰에 문제가 없는지도 점검해보세요.

푸딩님의 깃허브 링크를 참고하여 해당 부분의 코드를 직접 살펴보는 것도 문제 해결에 도움이 될 것입니다.
GitHub 링크: https://github.com/padoz3/django-pinterest

혹시 문제가 지속된다면 추가적인 정보(예: 로그아웃을 처리하는 뷰의 코드, urls.py의 관련 코드 등)를 제공해주시면 더 정확한 답변을 드릴 수 있을 것 같습니다.

푸딩님의 프로필 이미지
푸딩

작성한 질문수

질문하기