Übergeben Sie die Variable von Python (Flask) an HTML in der Rendervorlage?

Lesezeit: 2 Minuten

Benutzer-Avatar
DiePGT

Der Webserver funktioniert (Python Flask), aber wenn ich auf die Website gehe, wo der Wert von Tier sein sollte (Hund), zeigt er den Variablennamen Tier. (Der Code enthält mehr, aber dies ist die einfachste Version, bei der es sich um dasselbe Konzept handelt.

Nehmen wir an, ich habe diese Codezeilen in meinem Python-Skript, auf dem Python-Flasche ausgeführt wird.

animal = dog
return render_template('index.html', value=animal)

und in meinem HTML

<h3>I like the animal: {{ value }}<h3>

aber anstatt „Hund“ anzuzeigen, zeigt es den Variablennamen „Tier“ an. Wie würde ich also vorgehen, um die Python-Variable in HTML anzuzeigen? Danke

  • Ich müsste noch mehr Code sehen. Ich glaube, das sollte funktionieren, es sei denn, Hund == ‘Tier’

    – Cory Madden

    17. Juli 2017 um 16:40 Uhr

  • Nein, aus irgendeinem Grund funktioniert es nicht, es wird nur “Tier” statt “Hund” angezeigt.

    – DiePGT

    17. Juli 2017 um 17:02 Uhr

  • Ich müsste mal schauen wo dog ist definiert. So wie du es zeigst, dog ist eine weitere Variable. Es sei denn, Sie wollten tippen animal = 'dog'. Wenn Sie Ihren Code mit der gesamten Ansicht bearbeiten, wäre es einfacher, es Ihnen zu sagen. Denn so ist es richtig.

    – Cory Madden

    17. Juli 2017 um 17:11 Uhr

  • Gibt es eine Möglichkeit, dass ich das reinbekomme url_for Parameter? mit {{ value }}

    Benutzer11840960

    6. November 2019 um 12:31 Uhr

  • Eine gute Möglichkeit, diese Methode anzuwenden, besteht darin, eine Eingabe zu erstellen und den Wert im value-Attribut zu verwenden, wie im Beispiel.

    – Alexandre Crivellaro

    7. Juli 2020 um 21:17 Uhr

Sollte es nicht sein animal="dog"? Wenn “Hund” der Wert ist, den Sie nach “Ich mag das Tier:” gedruckt sehen möchten, müssen Sie Folgendes tun:

animal="dog"
return render_template('index.html', value=animal)

  • Gibt es eine Möglichkeit, dass ich das reinbekomme url_for Parameter? mit {{ value }}

    Benutzer11840960

    6. November 2019 um 12:30 Uhr

  • @Dev ja, wenn Sie diesem Beispiel folgen, verwenden Sie {{ url_for('static', filename=value) }} vorausgesetzt, dieser Wert ist auf Ihr beabsichtigtes URL-Ziel eingestellt

    – Justapigeon

    30. Dezember 2019 um 5:36 Uhr

Da Sie einen Wert über eine Variable übergeben müssen, müssen Sie ihn als Zeichenfolge wie folgt definieren:
animal="dog"
dann übergeben Sie es an die HTML-Vorlage:
return render_template('index.html', value=animal)

Jetzt sollten Sie den übergebenen Wert im HTML sehen.

  • Gibt es eine Möglichkeit, dass ich das reinbekomme url_for Parameter? mit {{ value }}

    Benutzer11840960

    6. November 2019 um 12:30 Uhr

1005870cookie-checkÜbergeben Sie die Variable von Python (Flask) an HTML in der Rendervorlage?

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

Privacy policy