阻止我的侧栏上的按钮,直到用户登录?

2024-10-03 06:18:47 发布

您现在位置:Python中文网/ 问答频道 /正文

使用Django和HTML,如何阻止选项卡栏上的按钮,直到有人登录

我的侧边栏:

<div id="mySidebar" class="sidebar">
  <a href="javascript:void(0)" class="closebtn" onclick="closeNav()">×</a>
  <a href="/">Home</a>
  <a href="/accounts/login">Login</a>
  <a href="#">Profile</a>
  <a href="/upload">Upload</a>
  <a href="/top_photos">Top Photos</a>
  <a href="/aboutus">About Us</a>
  <a href="/contact">Contact Us</a>
</div>

阻止语句:

{% block content %}
{% if user.is_authenticated %}
  <h1 style="text-align:right">Welcome {{ user.username }}!</h1>

{% else %}
  <div class="c">
  <p>You are not logged in, log in to recolor a photo</p>
  <a href="/upload">
{% endif %}
{% endblock %}

Tags: djangoindividhtmlh1按钮选项卡
2条回答

尝试使用request.user.is_authenticated而不是user.is_authenticated。我的猜测是,您没有将User对象传递给views.py中的模板,但是您几乎肯定传递了request,如果您使用的是Django的登录系统,它将包含用户信息

试试这个:

{% block content %}
{% if request.user.is_authenticated %}
  <h1 style="text-align:right">Welcome {{ user.username }}!</h1>

{% else %}
  <div class="c">
  <p>You are not logged in, log in to recolor a photo</p>
  <a href="/upload">
{% endif %}
{% endblock %}

相关问题 更多 >