问题描述
django.js 中是否有一个函数在用户访问视图(特别是 DetailView
)时被调用?我正在尝试计算特定页面的查看次数(例如 StackOverflow
),我想知道是否有我可以使用的功能。
如果这有用,这里是DetailView
:
class DetailQuestionView(DetailView):
model = Question
template_name = 'questions/questions-part/question-detail.html'
解决方法
在所有基于通用类的视图中,dispatch
方法是视图逻辑的入口点,即如果使用视图,dispatch
将被调用。此外,还根据请求方法调用小写的 HTTP 方法,即 get
、post
方法。因此,您可以覆盖这两个中的任何一个以满足您的需求:
class DetailQuestionView(DetailView):
model = Question
template_name = 'questions/questions-part/question-detail.html'
def dispatch(self,request,*args,**kwargs):
# Your code
return super().dispatch(request,**kwargs)
,
没关系,您可以使用 DetailView 的 get 方法。