检查 Flask-Cache `unless` 参数的用户是否匿名
Check if user is anonymous for Flask-Cache `unless` argument
我正在尝试缓存一个视图,除非用户已登录。current_user
只能在视图内工作,所以我无法将它传递给 unless=
。我该如何正确执行此操作?
@app.route("/")
@app.cache.cached(timeout=300, unless=current_user.is_authenticated())
def index():
return 'stuff to return'
将通话包装在 lambda
中。 Flask-Cache 将在执行视图时调用该函数,而不是在定义视图时调用一次。
@app.cache.cached(timeout=300, unless=lambda: current_user.is_authenticated)
docs具体说unless
应该是每次都会执行的可调用对象。
我正在尝试缓存一个视图,除非用户已登录。current_user
只能在视图内工作,所以我无法将它传递给 unless=
。我该如何正确执行此操作?
@app.route("/")
@app.cache.cached(timeout=300, unless=current_user.is_authenticated())
def index():
return 'stuff to return'
将通话包装在 lambda
中。 Flask-Cache 将在执行视图时调用该函数,而不是在定义视图时调用一次。
@app.cache.cached(timeout=300, unless=lambda: current_user.is_authenticated)
docs具体说unless
应该是每次都会执行的可调用对象。