g object to store data during a request. What will be the output when accessing /show?from flask import Flask, g app = Flask(__name__) @app.before_request def before(): g.user = 'Alice' @app.route('/show') def show(): return f"User is {g.user}"
g is used to store data during a request and is reset for each request.The g object is a special Flask object used to store data during a request. Here, g.user is set to 'Alice' before the request, so the route returns 'User is Alice'.
g.value = 10 in one request, what will g.value be in the next request if not set again?from flask import Flask, g app = Flask(__name__) @app.route('/set') def set_value(): g.value = 10 return 'Value set' @app.route('/get') def get_value(): return str(getattr(g, 'value', 'No value'))
g object for each request.The g object is unique to each request. Data set in one request is not saved for the next. So, g.value is not set in the second request and returns 'No value'.
g.user outside a request context. What causes the error?from flask import Flask, g app = Flask(__name__) def get_user(): return g.user print(get_user())
g object.The g object exists only during an active request context. Accessing it outside a request (like in global code) raises a RuntimeError.
g object is used for in Flask.g.The g object is designed to hold data during one request only. It helps share information between functions during that request.
g.user in a before_request function and accesses it in a route.@app.before_request decorator and access g.user properly.Option B correctly sets g.user in a function decorated with @app.before_request and accesses it in the route. Other options either miss the decorator or use undefined variables.