2012-09-01 116 views
1

view看起來像Django的:{{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)) 
template: home.html

,我做

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

但它不打印用戶,只是打印你好 我也做用戶在日誌中

'USER': 'iamuser', 

這是什麼我在這裏失蹤?

+0

嘗試在模板中使用{{request.user.username}},也請確保您的用戶已成功登錄。 –

回答

4

確保您已經添加:

django.core.context_processors.request 

您TEMPLATE_CONTEXT_PROCESSORS在settings.py設置。 Docs

+0

謝謝@Timmy,我添加了它,但仍然無法看到用戶,請問我必須做其他事情嗎? – daydreamer

+0

如果你還沒有,你還必須重新啓動你的網絡服務器。否則,應該是這樣。你沒有任何其他的名爲'請求'的上下文變量嗎?我建議使用./manage.py runserver web服務器,它將公開所有異常(或者,在settings.py中設置DEBUG = True),並安裝Django Debug Toolbar(http://pypi.python.org/pypi/django -debug-toolbar),其中包括在調試模式下列出使用的上下文處理器以及所有模板上下文變量。希望他們能幫助你追蹤問題的根源。 – Sam

1

請求對象不是必需的。模板可以訪問用戶變量。所以只需{{ user.first_name }}將工作。