我正在尝试用 Django 编写我的第一个中间件。
class RefreshBalance:
def process_view(self, request, view_func, view_args, view_kwargs):
pass
我想检测 View 是否被调用并刷新余额。我可以看到“ View ”参数,但不知道如何使用它?例如:
if view == "login.dashboard:
pass
我如何找出正在调用的 View ?
最佳答案
process_view(self, request, view_func, view_args, view_kwargs) request is an HttpRequest object. view_func is the Python function that Django is about to use. (It’s the actual function object, not the name of the function as a string.)
所以你需要做类似的事情:
from login import dashboard
if view_func.__name__ == dashboard.__name__:
pass
关于Django 中间件和获取 View 名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17025677/