этот файл
файл под
под име-
име-
нем flask2.py:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/echo/<thing>')
def echo(thing):
return render_template('flask2.html', thing=thing)
app.run(port=9999, debug=True)
Аргумент thing = thing означает, что для передачи переменной с именем thing
в шаблон эта переменная содержит значение строки thing.
Убедитесь, что файл flask1.py перестал работать, и запустите файл flask2.py:
$ python flask2.py
Теперь введите этот URL:
http://localhost:9999/echo/Gamera
Веб-серверы
271
Вы должны увидеть следующее:
Say hello to my little friend: Gamera
Модифицируем наш пример и сохраним его в папке templates под именем
flask3.html:
<html>
<head>
<title>Flask3 Example</title>
</head>
<body>
Say hello to my little friend: {{ thing }}.
Alas, it just destroyed {{ place }}!
</body>
</html>
Второй аргумент в URL, echo, вы можете передать множеством способов.
Передача аргумента как части пути URL
С помощью этого метода вы просто расширяете URL (сохраните этот файл как
flask3a.py):
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/echo/<thing>/<place>')
def echo(thing, place):
return render_template('flask3.html', thing=thing, place=place)
app.run(port=9999, debug=True)
Как обычно, остановите предыдущий сценарий тестового сервера, если он еще
работает, и затем запустите новый:
$ python flask3a.py
URL должен выглядеть так:
http://localhost:9999/echo/Rodan/McKeesport
Вы должны увидеть следующее:
Say hello to my little friend: Rodan. Alas, it just destroyed McKeesport!