Как передать переменную в `redirect (url_for ())` - PullRequest
0 голосов
/ 07 ноября 2019

Я пытаюсь передать переменную во время перенаправления на другой URL, используя flask, в python, и получаю name var not defined.

Это то, что я делаю:

@app.route('/')
def root():
    delay = randint(0, 5)
    time.sleep(delay)
    return redirect(url_for('first_hop', delay=delay))

Похоже, это способ передачи переменной, основанный на других ответах.

@app.route('/first_hop')
def first_hop():
    x = delay
    print(delay)
    return redirect(url_for('second_hop'))

Но здесь я не знаю, как ее получить. Нужно ли делать переменную глобальной?

Ошибка ниже.

NameError: имя 'delay' не определено

1 Ответ

1 голос
/ 07 ноября 2019

В first_hop параметры можно получить с помощью request.args.get('delay').

@app.route('/first_hop')
def first_hop():
    x = request.args.get('delay')
    print(x)
    return redirect(url_for('second_hop'))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...