Ok, das ist wie eine Neulingfrage, aber ich habe mit Jinja die Vorlagenvererbung mit Flask ausprobiert.
Das Problem, auf das ich stoße, ist, dass meine Blöcke nicht in meiner base.html-Vorlage dargestellt werden.
Das ist meine base.html
Code:
<!doctype html>
<html>
<head>
<title>{% block title %}{% endblock %}</title>
</head>
<body>
{% block body %}{% endblock %}
<h2>From Layout</h2>
</body>
</html>
Dies ist meine index.html, die base.html erweitert
{% extends "base.html" %}
{% block title %} Home {% endblock %}
{% block content %}
<h1> Welcome home {name}</h1>
{% endblock %}
Dies ist meine Hauptflaschendatei, von der aus ich meine App ausführt:
from flask import Flask
from flask import render_template
app = Flask(__name__)
@app.route("/")
@app.route("/<name>")
def index(name="Mark"):
return render_template("index.html", name=name)
Habe ich etwas verpasst? Kann nicht herausfinden, was ich falsch mache.
Antworten:
0 für die Antwort № 1Ihre Indexdatei enthält "Blockinhalt", Ihre Basisdatei jedoch "Blockkörper". Wählen Sie das eine oder das andere, aber seien Sie konsequent.
Wenn Sie das Problem behoben haben, müssen Sie auch die Anzeige des Namens korrigieren: {{ name }}
nicht {name}
.