redirect 주소를 다르게 해주면 될 거 같은데, 어떻게 코드를 완성시켜야 할지 모르겠더라고요. 그래서 튜터님께 찾아가서 상황을 설명드리고 답을 얻었습니다.
해결
article.save()
# HTTP_REFERER -> 이전 페이지 URL 포함하는 HTTP 헤더를 의미
# request.META.get('HTTP_REFERER'): 현재 요청이 어느 페이지에서 왔는지 확인하는 것 (아까 request.get_full_path() 썼던 것과 같음)
referer = request.META.get('HTTP_REFERER')
if referer:
# 예: 상세 페이지에서 왔으면 상세 페이지로 메인에서 왔으면 메인으로 이동
return redirect(referer)
# referer가 없는 경우 메인 페이지로 리다이렉트(외부에서 들어왔을 시)
return redirect("articles:main")
referer를 추가해주었어요.
referer은 서버에 들어가서 관리자 모드를 실행하면 확인할 수 있어요.
referer = request.META.get('HTTP_REFERER')
저 주소를 들고 오는 코드예요.
if referer:
# 예: 상세 페이지에서 왔으면 상세 페이지로 메인에서 왔으면 메인으로 이동
return redirect(referer)
만약 referer이 있다면, 그 해당되는 path로 가게 되고요,
# referer가 없는 경우 메인 페이지로 리다이렉트(외부에서 들어왔을 시)
return redirect("articles:main")