2017-04-17 12 views
0

사용자 등록시 Django-Registraion-Redux를 사용하고 있습니다. 사용자가 등록을하고 계정 활성화 링크를 클릭하면 활성화됩니다. 그러나 사용자가 동일한 링크를 다시 클릭하면 이전과 동일한 메시지가 표시됩니다. 이것은 기술적으로 올바르지 않습니다. 동일한 링크를 클릭하거나 적절한 메시지를 표시하도록 사용자를 제한하는 방법장고 계정 활성화 링크를 두 번 사용할 수 없습니까?

+0

나를 위해, 사용자가 유효한 활성화 링크를 클릭하고 그들의 계정이 이미 활성화되어 있다면, 모든 것이 정상임을 말하면서, 얼굴에 약간의 오류를 던질 필요가 없습니다. – aliva

+0

예.하지만 오류 계정이 이미 활성화되어 있습니다. 동일한 페이지가 표시되지 않습니다. –

+0

어떻게 표시합니까? 계정이 이미 활성화되었습니다. –

답변

3

활성화 된보기를 무시하고 요청한 사용자가 활성 상태인지 확인하십시오. 사용자가 활성화되지 않은 경우,이를 활성화하거나 사용자가 이미 활성화되어 다른 경우 다음과 같은 일을 할 account already activated..

같은 것을 보여주는 오류 페이지로 리디렉션 ..

def activate(request, *args, **kwargs): 
    if request.user.is_active: 
     return render(request, alredy_active.html, {}) 
    else: 
     request.user.is_active = True 
     request.user.save() 
     return render(request, success.html, {}) 
+0

내가 그것을 위해 URL을 설정해야합니다 –

+0

활성화 URL이 이미 거기에 필요한 모든 재정의 . 또한 이미 활성보기를 가리키는 오류 URL을 설정해야합니다. – Adaikalaraj

0
if request.user.is_authenticated(): 
    # They already have an account; don't let them register again 
    return render_to_response('template-name', {}) 
여기

우리는 사용자를 확인하는 이 진술 request.user.is_authenticated()의 도움으로 인증되었거나 사용자가 인증 된 경우 사용자 정의 된 템플리트에 대한 응답을 렌더링합니다.