2012-09-01 13 views
1

viewtemplate: home.html에서장고 : {{request.user가}} 템플릿에 아무것도 표시되지 않습니다

def done(request): 
    """Login complete view, displays user data""" 
    ctx = { 
     'version': version, 
     'last_login': request.session.get('social_auth_last_login_backend') 
    } 
    logging.info(str(request)) 
    return render_to_response('home.html', ctx, RequestContext(request)) 

처럼, 나는

<p>Hello {{ request.user }}</p> 

을하지만 그것은 를 인쇄하지 않습니다 보인다 사용자 그냥 인쇄합니다 안녕하세요 도 로그에 사용자가

'USER': 'iamuser', 

여기에 내가 누락 된 부분이 있습니까?

+0

템플릿에서 {{request.user.username}}을 (를) 사용하고 사용자가 성공적으로 로그인했는지 확인하십시오. –

답변

4

는 추가 확인 : settings.py로 설정하여 TEMPLATE_CONTEXT_PROCESSORS에

django.core.context_processors.request 

합니다. Docs.

+0

Thanks @ Timmy, 내가 추가했지만 여전히 사용자를 볼 수 없습니다. 다른 일을해야합니까? – daydreamer

+0

아직 웹 서버를 다시 시작하지 않은 경우 다시 시작해야합니다. 그렇지 않으면, 그것이어야합니다. 'request'라는 컨텍스트 변수가 없습니다. 예외를 드러내는 ./manage.py runserver 웹 서버를 사용하는 것이 좋습니다 (또는 settings.py에서 DEBUG = True로 설정). 장고 디버그 도구 모음 (http://pypi.python.org/pypi/django)도 설치하는 것이 좋습니다. -debug-toolbar). DEBUG 모드 일 때 사용 된 컨텍스트 프로세서와 모든 템플릿 컨텍스트 변수를 나열합니다. 다행히도 문제의 원인을 추적 할 수 있기를 바랍니다. – Sam

1

요청 개체가 필요하지 않습니다. 템플릿은 사용자 변수에 액세스 할 수 있습니다. 따라서 간단히 {{ user.first_name }}이 작동합니다.

관련 문제