I have a problem with the global variable in Flask.
from flask import Flask, redirect
app = Flask(__name__)
@app.route('/')
def define_x():
global x
x = 10
return redirect('/test')
@app.route('/test')
def test_x():
return str(x)
if __name__ == '__main__':
app.run()
There is an error when url redirect:
NameError: global name 'x' is not defined
But if I define 'x' on the top of the function:
from flask import Flask, redirect
app = Flask(__name__)
x = None
@app.route('/')
def define_x():
global x
x = 10
return redirect('/test')
@app.route('/test')
def test_x():
return str(x)
if __name__ == '__main__':
app.run()
the redirect page return None
not 10.