изучая джанго, и я получаю это, TemplateSyntaxError, сообщение

#django

Вопрос:

сообщение об ошибке

 16          {% if request.user.is_authenticated %}
17          <ul class="menu">
18              <li {% if section=="dashboard" %}class="selected" {% endif %}>
19                  <a href="{% url 'dashboard'%}">My dashboard</a>
20              </li>
21         
28          {% endif %}
 

это код, который выдает мне ошибку, я не знаю, что я делаю не так

сообщение об ошибке: Не удалось проанализировать остаток: ‘==»панель мониторинга»‘ из ‘раздела==»панель мониторинга»‘

Ответ №1:

Франциско,

Вам нужно поставить пробел между оператором ( == ) и переменной ( section ) и сравниваемым значением ( "dashboard" ).

           {% if request.user.is_authenticated %}
          <ul class="menu">
              <li {% if section == "dashboard" %}class="selected"{% endif %}>
                  <a href="{% url 'dashboard'%}">My dashboard</a>
              </li>
         
          {% endif %}
 

Комментарии:

1. это не работает, даже если я помещу пространство между ними

2. посмотрите на изображение сообщения об ошибке… и код Visual studio делает один из равных(=) красным. Я не знаю, почему

3. На изображении, которое вы опубликовали, я вижу, что вы не исправили код. Пожалуйста, вставьте пробел вокруг оператора equals ( == ) в {% if %} теги, используемые в элементах списка ( <li> ), и повторите попытку.

4. хорошо, я добавил место, и теперь оно работает. Мне пришлось использовать обычный текстовый редактор, потому что код visual studio автоматически удалял пространство между