Простой Python. современный стиль программирования - читать онлайн бесплатно полную версию книги . Страница 209

(я опущу функцию home() для экономии места). Сохраните этот

этот файл

файл под

под име-

име-

нем 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!