[英]Get username in Symfony (in Twig) on page, which is accessible to anonymous users
有沒有辦法訪問頁面上登錄用戶的用戶名,Symfony 2.6.1 中的匿名用戶可以訪問該用戶名?
示例:我有主頁,登錄鏈接在哪里,如果有用戶登錄,我想將他的用戶名顯示為指向他的帳戶的鏈接,而不是登錄鏈接。
如果我使用{{ app.user.username }}
它會顯示錯誤
Impossible to access an attribute ("username") on a NULL variable ("")
因為app.user
在具有security: false
頁面上是 null 對象是security.yml 。 它僅適用於需要在防火牆下且沒有security: false
。
我不確定我是否正確理解了您的問題,但是{{ app.user.username }}
確實會引發異常,因為如果您未登錄,則沒有用戶對象。因此只需檢查該對象是否存在:
{% if app.user is defined %}
{# link to account #}
{% else %}
{# link to login #}
{% endif %}
如果這個提示不是預期的,請給我們一些代碼。
你應該嘗試這樣的事情:
為匿名設置默認值:
{{ app.user.username|default('Not Logged') }}
嘗試這個
{{ app.security.getToken().getUser() }}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.