2011-03-08 2 views
1

, 나는 URL 계정/로그인/로그인 모듈에 템플릿에 대한 참조를 내가 사용하려는지도 잘 작동하지만 성공적으로 로그인 한 후 사용자가 리디렉션되어야하는 위치를 지정한 next 속성의 값을 변경하려고합니다. 이러한 변수에 액세스하여 값을 인쇄하려면 어떻게해야합니까? 더 중요한 것은 어떻게 수정할 수 있습니까?액세스 및 수정하는 방법을 장고 템플릿 컨텍스트 변수 내 urls.py에서

감사합니다.

+1

실제로 장고 문서의 어느 부분을 읽고? http://docs.djangoproject.com/ko/1.2/ref/templates/api/#django.template.Context에 대한 정보를 읽은 다음보다 구체적인 질문을 업데이트하십시오. –

+0

culov, 당신은 당신의 urls.py에서 너무 많은 것을 시도하고 있습니다. 템플릿을 지정해야하는 방법은 없습니다. – dappawit

답변

1

직접 뷰에 대한 URL :

(r'^accounts/login/', 'myproj.login.views.mylogin') 

그런 다음보기 코드에서 리디렉션을 처리 :

def mylogin(request, **kwargs): 
    if request.user.is_authenticated(): 
     if 'next_url' in request.session: 
      url = request.session['next_url'] 
      del request.session['next_url'] # Cleaning next_url val 
      return HttpResponseRedirect('/%s' % url) 
     else: 
      return HttpResponseRedirect('/') 
    return login(request, **kwargs) 

@csrf_protect 
def login(request, template_name='registration/login.html'): 
    """Displays the login form and handles the login action.""" 
    retval = django.contrib.auth.views.login(request, template_name) 
    clear_session_data(request.session) 
    return retval