Ungültiges Block-Tag: ‘endblock’. Haben Sie vergessen, sich zu registrieren oder diesen Tag zu laden?

Lesezeit: 3 Minuten

Ich bleibe bei diesem Fehler hängen. Ich bin frischer Benutzer von Django und ich lerne es, indem ich die Schritte auf dem Youtube-Kanal befolge. Ich habe alles genauso gemacht, aber ich habe diesen Block-Tag-Fehler bekommen. Hier ist Layout1 HTML-Inhalt:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>{ % block title %}{% endblock %}</title>
</head>
<body>
{ % block content %}   {% endblock %}
</body>
</html>

HTML-Inhalt indexieren:

{% extends "layout/layout1.html"%}


{% block title %}The Video page{% endblock %}


{ % block content %}


<h1>This is a html</h1>

<p>This is a p tag</p>

<a href="http://www.noobmovies.com">Click me!</a>
<img src="https://upload.wikimedia.org/wikipedia/en/7/72/Anthony_Raneri.jpg"/>

{% endblock % }

views.py-Inhalt:

from django.template.response   import TemplateResponse


# Create your views here.
def video(request):

    return TemplateResponse (request,"video/index.html",{})

Wie kann ich dieses Problem lösen? Da ich doppelt überprüft habe, um sicherzustellen, dass alles genauso eingegeben ist wie der Youtube-Kanal, habe ich normalerweise nicht verstanden, wo ich einen Fehler gemacht habe.

Django hat Ihr Startblock-Tag nicht erkannt, weil Sie ein Leerzeichen zwischen haben { und die %.

Sie haben auch den gleichen Fehler in Start- und End-Tags in der anderen Vorlagendatei.

Sie haben einfach Tippfehler.

Du solltest haben {% nicht { %und Sie haben diese Tippfehler in beiden Vorlagen.

Also muss man haben

<!DOCTYPE html>
<html lang="en">

  <head>
    <meta charset="UTF-8">
    <title>{% block title %}{% endblock %}</title>
  </head>
  <body>
    {% block content %}   {% endblock %}
  </body>
</html>

und

{% extends "layout/layout1.html"%}


{% block title %}The Video page{% endblock %}


{% block content %}
  <h1>This is a html</h1>

  <p>This is a p tag</p>

  <a href="http://www.noobmovies.com">Click me!</a>
  <img src="https://upload.wikimedia.org/wikipedia/en/7/72/Anthony_Raneri.jpg"/>

{% endblock %}

HINWEIS: Vergessen Sie nicht die Einkerbungen in html Dateien, es macht Code besser lesbar.

  • Übersichtlich und absolut verständlich. Danke schön!

    – М.Б.

    18. Juli 2017 um 19:52 Uhr

Wenn keine der vorherigen Antworten für Sie funktioniert hat, versuchen Sie Folgendes:

Sie verwenden höchstwahrscheinlich eine base.html-Datei und haben das statische CSS, das oben geladen wird {% load static %} und das Problem für mich war, dass ich dies auch in meine andere Vorlagendatei laden musste.

Ich verwende Django 2.0.3 und dies hat das Problem für mich gelöst.

Für mich war es Emacs, der die Zeilen auflöste, als ich die Vorlage herüberkopierte, also

{% endif  

war auf einer Linie und

%} 

war in der nächsten Zeile. Diese müssen zusammen in einer Zeile stehen, und

{{ variable_name }}

auch.

Für mich war es das Problem der Verwendung i18n ohne zu setzen Die {% load i18n %} in der Vorlagendatei (ich habe es nur in die Basisvorlage eingefügt)

Benutzeravatar von Mohammad Khatibzadeh
Mohammad Khatibzadeh

Bei mir war das Problem mit {% extends %}es war verlängern.

Benutzeravatar von Cryce Truly
Cryce wirklich

Stellen Sie in Ihrer HTML-Vorlage sicher, dass Sie {% load static %} kurz nach deinem {% block content %}
bevor Sie es in der Vorlage verwenden

1436880cookie-checkUngültiges Block-Tag: ‘endblock’. Haben Sie vergessen, sich zu registrieren oder diesen Tag zu laden?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy