我是DJango的新手,正在创建一个网站。我已经创建了一个带有NAV栏的基本HTML页面,它将在所有页面上使用。我想显示消息";欢迎使用"用户名"作为所有页面上的第一行。
我在views.py 中编写了以下代码
def getusername(request):
uname=request.getusername()
return render(request,'main.html',{'uname':uname})
在main.html中,在定义了标题和中殿栏之后,我得到了以下html代码
<span class="label label-default">Welcome{{uname}}</span>
当我运行这个代码时,我可以查看所有页面中的导航栏,它扩展了基本页面(main.html(
但是欢迎消息不会获取用户名。
我在urls.py 中配置了以下内容
path("", views.getusername,name='getusername')
注意:即使我对要从views.py返回的字符串进行硬编码,该字符串也不会显示为欢迎消息的一部分
在每个模板中,您都可以访问用户对象。您可以检查用户是否已通过身份验证:
{% if user.is_authenticated %}
Welcome, {{ user.username }}
{% else %}
# show register or(and) login button
{% endif %}