hier nicht definiert ist wird der Kolben Code:Während Web-Formulare in Flask zu schaffen, erhalte ich die Fehlermeldung: jinja2.exceptions.UndefinedError: 'reviewform'
from flask import Flask, render_template
from wtforms import Form, TextAreaField
app = Flask(__name__)
app.config['SECRET_KEY'] = 'mysecretkey'
class ReviewForm(Form):
reviewText = TextAreaField()
@app.route('/', methods=['GET', 'POST'])
def index():
reviewform = ReviewForm()
return render_template("review.html", form=reviewform)
if __name__ == '__main__':
app.run(debug=True)
Hier wird die Formularvorlage Jinja2 mit:
<!doctype html>
<html>
<head>
<title>Review Page</title>
</head>
<body>
<h1>Enter your review</h1>
<form method="POST" action="{{ url_for('index') }}">
{{ reviewform.csrf_token }}
{{ reviewform.reviewText }}
</form>
</body>
</html>
Es scheint, dass das Objekt ordnungsgemäß definiert und an render_template() übergeben wurde. Ich kann den Fehler nicht verstehen. Kann mir bitte jemand helfen?
Hier ist die Rückverfolgung:
Traceback (jüngste Aufforderung zuletzt):
Datei „C: \ Users \ Default \ AppData \ Local \ Continuum \ Anaconda3 \ lib \ site-packages \ Kolben \ app.py ", Zeile 1994, in Anruf zurückgeben self.wsgi_app (environ, start_response) Datei" C: \ Benutzer \ Standard \ AppData \ Lokal \ Continuum \ Anaconda3 \ lib \ site-packages \ flask \ app. py ", Linie 1985, in wsgi_app response = self.handle_exception (e) Datei" C: \ Benutzer \ Standard \ AppData \ Local \ Kontinuum \ Anaconda3 \ lib \ site-packages \ flask \ a pp.py ", Zeile 1540, in handle_exception reraise (exc_type, exc_value, tb) Datei" C: \ Benutzer \ Standard \ AppData \ Lokal \ Continuum \ Anaconda3 \ lib \ site-packages \ flask_compat.py ", Zeile 33 , in Reraise Wert erhöhen Datei "C: \ Benutzer \ Standard \ AppData \ Lokale \ Kontinuum \ Anaconda3 \ lib \ Site-Pakete \ Kolben \ app.py", Zeile 1982, in Wsgi_app Antwort = self.full_dispatch_request() Datei "C: \ Benutzer \ Standard \ AppData \ Lokale \ Kontinuum \ Anaconda3 \ lib \ Site-Pakete \ Kolben \ app.py", Zeile 1614, in full_dispatch_request rv = self.handle_user_exception (e) Datei "C: \ Benutzer \ Standard \ AppData \ Lokales \ Kontinuum \ Anaconda3 \ lib \ Site-Pakete \ Kolben \ app.py ", Zeile 1517, in handle_user_exception reraise (exc_type, exc_value, tb) Datei "C: \ Benutzer \ Standard \ AppData \ Lokal \ Continuum \ Anaconda3 \ lib \ site-packages \ flask_compat.py", Zeile 33, in Reraise Wert erhöhen Datei "C: \ Benutzer \ Default \ AppData \ Local \ Continuum \ Anaconda3 \ lib \ site-packages \ flash \ app.py ", Zeile 1612, in full_dispatch_request rv = self.dispatch_request() Datei" C: \ Benutzer \ Standard \ AppData \ Local \ Continuum \ Anaconda3 \ lib \ site "packages \ flask \ app.py", Zeile 1598, in dispatch_request zurücksenden self.view_functionsrule.endpoint Datei "C: \ Benutzer \ Jimmy Valentine \ PycharmProjects \ SentimentAnalysis \ SentimentAnalysis.py", Zeile 16, im Index return render_template ("review.html", form = reviewform) Datei "C: \ Benutzer \ Standard \ AppData \ Lokal \ Continuum \ Anaconda3 \ lib \ Site-Pakete \ Kolben \ Templating.py", Zeile 134, in render_template context, ctx.app) Datei "C: \ Benutzer \ Standard \ AppData \ Lokal \ Continuum \ Anaconda3 \ lib \ site-packages \ flash \ templating.py", Zeile 116, in _render rv = template.render (Kontext) Datei "C: \ Benutzer \ Standard \ AppData \ Lokale \ Continuum \ Anaconda3 \ lib \ site-packages \ jinja2 \ asyncsupport.py", Zeile 76, in render return original_render (selbst, * args, ** kwargs) Datei "C: \ Benutzer \ Standard \ AppData \ Lokale \ Kontinuum \ Anaconda3 \ lib \ Site-Pakete \ Jinja2 \ environment.py", Zeile 1008, in Render zurückgeben Self.environment.handle_exception (exc_info, True) Datei "C: \ Benutzer \ Standard \ AppData \ Lokal \ Kontinuum \ Anaconda3 \ lib \ Site-Pakete \ Jinja2 \ environment.py", Zeile 780, in handle_exception reraise (exc_type, exc_value, tb) Datei "C: \ Benutzer \ Standard \ AppData \ Lokal \ Kontinuum \ Anaconda3 \ lib \ Site-Pakete \ jinja2_compat.py ", Zeile 37, in Reraise Raise value.with_traceback (tb) Datei" C: \ Benutzer \ Jimmy Valentine \ PycharmProjects \ SentimentAnalysis \ templates \ review.html ", Zeile 10, im Template-Code der obersten Ebene {{ reviewform.reviewText}} Datei "C: \ Benutzer \ Standard \ AppData \ Lokal \ Continuum \ Anaconda3 \ lib \ Site-Pakete \ Jinja2 \ environment.py", Zeile 430, in getattr return getattr (Objekt, Attribut)
jinja2.exceptions.UndefinedError: ‚reviewform‘ ist nicht definiert
Dank @Bovarysme. Dies ist das grundlegende Argument, das übergeben wird. Herr, ich schäme mich für mich. :) –