Выпадающее меню из списка Python с использованием Flask и HTML - PullRequest
1 голос
/ 12 июля 2020

Я создаю раскрывающееся меню в HTML, используя информацию из сценария python. Я вдохновился этим вопросом StackOverflow: Как создать раскрывающееся меню из списка python, используя Flask и HTML

Однако, когда я пытаюсь вернуть выбранный ответ , Я получаю (тоже пробовал с 'color' и дал мне ту же проблему):

select = request.form.get(colours)
NameError: name 'colours' is not defined

Это мой __init__.py, который является основным в моем Flask приложении, и у меня есть этот маршрут внутри который предполагает получение элемента, который был выбран в раскрывающемся списке, и возвращает выбранное значение (просто отображается в веб-браузере):

@app.route("/upload", methods=["POST", "GET"])
def upload():
if "email" in session:
    if request.method == "POST":
        select = request.form.get(colours)
        return str(select)
    else:
        return render_template("upload.html", colours=dirs)
else:
    return render_template("index.html")

Это мой upload.html, который содержит код HTML для раскрывающийся список:

 <form  action="{{ url_for('upload') }}" method="post">

            <div>
                <select class="browser-default custom-select" name= colours method="POST" action="/" >
                    {% for colour in colours %}
                    <option value= "{{colour}}" SELECTED>{{colour}}</option>"
                    {% endfor %}
                </select>
            </div>

    <input type="image" src="https://thisisapicture.png" style="height: 45px">
</form>

Как я могу получить выбор пользователя для раскрывающегося списка, если ни request.form.get (цвета), ни request.form.get (цвет) не были «не определены»?

1 Ответ

1 голос
/ 12 июля 2020
<form action="{{ url_for('upload') }}" method="post">

Атрибут действия вашего текущего тега form не определен, поэтому он никуда не отправляет данные, когда вы его отправляете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...