Top.Mail.Ru
Ответы

Почему request не работает?

код на питоне где из выпадающего списка пользователь выбирает пункт и этот пункт отображается на другой странице. Проблема в том что программа возвращает только "none"

12345678
 @app.route('/') 
def index(): 
    return render_template('index.html',h2 = h2) 

@app.route('/next') 
def next(): 
    h2 = request.form.get('tag') 
    return render_template('index.html',h2 = h2) 

html:

123456789101112131415
 <form action="/next" method="get,post" name="tag"> 
        <h1>Добро пожаловать в конструктор</h1> 
        <label for="myBrowser">{{h2}}</label> 
        <input list="browsers" id="myBrowser" name="tags" /><br> 
        <datalist id="browsers"> 
            <option value="(заголовок)">h1</option> 
            <option value="(подзаголовок)">h2</option> 
            <option value="(текст)">p</option> 
            <option value="(ссылка)">a</option> 
            <option value="(картинка)">img</option> 
            <option value="(нум-список)">ol</option> 
            <option value="(нум-список)">ul</option> 
        </datalist> 
        <button type="submit">Далее</button>
</form> 
По дате
По Рейтингу
Аватар пользователя
Высший разум
5мес

У тебя поле <input> называется "tags", а в Python-коде ты пытаешься получить данные из параметра "tag".

Написанное в теге <form> method="get,post" - бред: должен быть указан ОДИН метод.

Написанное в теге <form> name="tag" никакой роли не играет, т.к. это самое "tag" на сервер никак не передаётся и может быть использовано только в работающем на этой странице сайта JS-коде. https://webref.ru/html/form/name