2010-08-05 4 views
1

request.sessions 사전을 이해하고이를 사용하는 방법을 알고 있습니다.사용자가 로그인하여 로그 아웃했을 때 사용할 수있는 django에서 쿠키를 설정하거나 가져 오는 방법

그러나,이 값은 사용자가 로그인하는 동안 request.sessions를 사용하는 경우에만 유효 설정하는 것이 나타납니다.

나는 고정 된 시간 동안 지속되며 사용자 여부에 의존하지 영구 쿠키를 설정해야 로그인했는지 여부.

익명 방문자의 값을 내 사이트에 저장하고 해당 사용자가 계정을 만들고 사이트에 로그인하는 경우 동일한 값을 검색하는 것이 좋습니다. 사용자가 세션간에 로그인하거나 세션간에 로그 아웃하면 값을 retriable 할 수 있어야합니다.

이 코드 예제는 무엇입니까?

답변

2

세션은 익명 사용자에게 잘 작동합니다. 인증 된 사용자에게만 작동한다고 생각하게 된 계기는 무엇입니까?

그 외에도 찾고있는 것을 수행 할 수있는 지연 등록 (http://tartarus.org/james/diary/2009/07/24/implementing-deferred-registration-with-django)을 살펴보십시오.

+0

감사합니다! 링크가 훌륭했습니다. 저는 오후에 이것을 사용하여 해결책을 구현했습니다. .get_stashed_in_session 메서드가 개체 자체가 아니라 개체의 목록을 반환한다는 것을 깨닫지 못했을 때 약간의 문제가 발생했지만 결국 알아 냈습니다. – DevX

1

Rolo가 말한 것처럼 익명 사용자의 경우 세션이 작동하지만 auth.logout 메서드를 사용하면 세션이 완전히 지워집니다. 로그 아웃보기에서 auth.logout으로 전화를 걸어 계속 유지하려는 데이터를 세션에 추가 할 수 있습니다.

+0

로그인 및 로그 아웃보기에서 정보를 전송할 생각은 전혀하지 않았습니다. 좋은 생각이야! – DevX

관련 문제