Zeyad Khaled
Zeyad Khaled

Reputation: 25

Django template Syntax Error Invalid block tag

Iam New To Django : i Made a Simple Website Following Python Crash Course Book , iam getting this Error and i can't find The Problem , Here is the error: enter image description here

Here is the login.html :

{% extends "learning_logs/base.html" %} {% load bootstrap4 %} {% block
page_header %}
<h2>Log in to your account</h2>
{% endblock page_header %} {% block content %}
<form method="post" action="{% url 'users:login' %}" class="form">
{% csrf_token %} {% bootstrap_form form %} {% buttons %}
<button name="submit" class="btn btn-primary">Log in</button>
{% endbuttons %}
<button name="submit">Log in</button>
<input type="hidden" name="next" value="{% url 'learning_logs:index' %}" />
</form>
{% endblock content %}

And here is base.html that login extends:

{% load bootstrap4 %}
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Learning Log</title>
    {% bootstrap_css %} {% bootstrap_javascript jquery='full' %}
  </head>

  <body>
    <nav class="navbar navbar-expand-md navbar-light bg-light mb-4 border">
      <a class="navbar-brand" tag="a" href="{% url 'learning_logs:index' %}">
        Learning Log</a
      >
      <button
        class="navbar-toggler"
        type="button"
        data-toggle="collapse"
        data-target="#navbarCollapse"
        aria-controls="navbarCollapse"
        aria-expanded="false"
        aria-label="Toggle navigation"
      >
        <span class="navbar-toggler-icon"></span>
      </button>
      <div class="collapse navbar-collapse" id="navbarCollapse">
        <ul class="navbar-nav mr-auto">
          <li class="nav-item">
            <a class="nav-link" href="{% url 'learning_logs:topics' %}"
              >Topics</a
            >
          </li>
        </ul>
        <ul class="navbar-nav ml-auto">
          {% if user.is_authenticated %}
          <li class="nav-item">
            <span class="navbar-texxt">Hello,{{user.username}}</span>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="{% url 'users:logout' %}">Log out</a>
          </li>
          {% else %}
          <li class="nav-item">
            <a class="nav-link" href="{% url 'users:register'%}">Register</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="{% url 'users:login'%}">Log in</a>
          </li>
          {% endif %}
        </ul>
      </div>
    </nav>
    <main role="main" class="container">
      <div class="pb-2 mb-2 border-bottom">
        {% block page_header %} {% endblock page_header %}
      </div>
      <div>{% block content %} {% endblock content %}</div>
    </main>
  </body>
</html>
i tried looking for any syntax writing like answered questions here did like leaving epty space between { and % but i couldn't find anything helpful ,

Upvotes: -1

Views: 132

Answers (3)

Zeyad Khaled
Zeyad Khaled

Reputation: 25

it was a Problem with Preetier Code Formatter Every time i save the could would Go wrong , So i Changed To Default Html Formatter, Hope this helps Someone in the Future as it's quite hidden

Upvotes: -1

Maycon
Maycon

Reputation: 21

Try to remove the line break in the end of line 1.

I mean, you should replace

{% extends "learning_logs/base.html "%} {% load bootstrap4 %} {% block
page_header %}

with

{% extends "learning_logs/base.html "%} {% load bootstrap4 %} {% block page_header %}

Upvotes: 1

djawadmain
djawadmain

Reputation: 93

Replace

{% endblock page_header %}

To

{% endblock %}

And apply this to your other end blocks

Upvotes: 0

Related Questions