Корзина в начальной загрузке навбар исчезает после входа в систему - PullRequest
0 голосов
/ 01 декабря 2018

Значок корзины на моей панели навигации исчезает, когда пользователь входит в систему. Я пытался отладить его, но не могу понять.Что я делаю неправильно?Нужно ли аутентифицировать пользователя, похожего на значок входа в систему на панели инструментов?

<ul class="navbar-nav ml-auto">
          {% if user.is_authenticated %}
            <li
            {% if 'dashboard' in request.path %}
              class="nav-item active mr-3"
            {% else %}
              class="nav-item mr-3"
            {% endif %}
            >
              <a class="nav-link" href="{% url 'profile' %}">
               Welcome {{ user.username }}</a>
            </li>
            <li class="nav-item mr-3">
              <a href="javascript:{document.getElementById('logout').submit()}" class="nav-link">
                <i class="fas fa-sign-out-alt"></i> Logout
              </a>
              <form action="{% url 'logout' %}" method="POST" id="logout">
                {% csrf_token %}
                <input type="hidden">
              </form>
            </li>
          {% else %}
            <li
            {% if 'register' in request.path %}
              class="nav-item active mr-3"
            {% else %}
              class="nav-item mr-3"
            {% endif %}
            >
              <a class="nav-link" href="{% url 'register' %}">
                <i class="fas fa-user-plus"></i> Register</a>
            </li>
            <li
            {% if 'login' in request.path %}
              class="nav-item active mr-3"
            {% else %}
              class="nav-item mr-3"
            {% endif %}
            >
              <a class="nav-link" href="{% url 'login' %}">
                <i class="fas fa-sign-in-alt"></i>

                Login</a>
            <li
            
            {% if 'cart' in request.path %}
              class="nav-item active mr-3"
            {% else %}
              class="nav-item mr-3"
            {% endif %}
            >
              <a class="nav-link" href="{% url 'cart' %}">
                <i class="fas fa-cart-plus"></i>

                Cart</a>
            </li>

enter image description here

Перед входом в систему После входа в систему

enter image description here

1 Ответ

0 голосов
/ 01 декабря 2018

Похоже, что ваш элемент корзины находится в блоке else {% if user.is_authenticated%}, поэтому, если пользователь не аутентифицирован, он будет отображаться, но если это так, то не будет.Если вы добавите {% endif%} над ссылкой корзины, она должна работать, и она будет отображаться, когда они оба вошли в систему и вышли из нее.Смотрите ниже:

<ul class="navbar-nav ml-auto">
          {% if user.is_authenticated %}
            <li
            {% if 'dashboard' in request.path %}
              class="nav-item active mr-3"
            {% else %}
              class="nav-item mr-3"
            {% endif %}
            >
              <a class="nav-link" href="{% url 'profile' %}">
               Welcome {{ user.username }}</a>
            </li>
            <li class="nav-item mr-3">
              <a href="javascript:{document.getElementById('logout').submit()}" class="nav-link">
                <i class="fas fa-sign-out-alt"></i> Logout
              </a>
              <form action="{% url 'logout' %}" method="POST" id="logout">
                {% csrf_token %}
                <input type="hidden">
              </form>
            </li>
          {% else %}
            <li
            {% if 'register' in request.path %}
              class="nav-item active mr-3"
            {% else %}
              class="nav-item mr-3"
            {% endif %}
            >
              <a class="nav-link" href="{% url 'register' %}">
                <i class="fas fa-user-plus"></i> Register</a>
            </li>
            <li
            {% if 'login' in request.path %}
              class="nav-item active mr-3"
            {% else %}
              class="nav-item mr-3"
            {% endif %}
            >
              <a class="nav-link" href="{% url 'login' %}">
                <i class="fas fa-sign-in-alt"></i>

                Login</a>
            {% endif %} <!-- Put endif here -->
            <li
            {% if 'cart' in request.path %}
              class="nav-item active mr-3"
            {% else %}
              class="nav-item mr-3"
            {% endif %}
            >
              <a class="nav-link" href="{% url 'cart' %}">
                <i class="fas fa-cart-plus"></i>

                Cart</a>
            </li>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...