我可以为get_context_data()添加两个以上的参数吗?

tam*_*ara 2 django get request typeerror django-context

我收到这个错误

TypeError at /debate/1/
get_context_data() takes exactly 2 arguments (1 given)
Run Code Online (Sandbox Code Playgroud)

现在它被定义为:

 def get_context_data(self, **kwargs):
Run Code Online (Sandbox Code Playgroud)

我希望它是:

 def get_context_data(self, request, **kwargs):
Run Code Online (Sandbox Code Playgroud)

所以我可以在里面做:

sort_by = request.GET.get('sort', '-rating_score')
Run Code Online (Sandbox Code Playgroud)

这是个好主意,怎么做?

Dav*_*cic 5

请求对象可作为基于类的View对象的成员使用,并可通过以下方式访问self.request.如果由于某种原因,你确实将它传递给**kwargs使用,kwargs.get("request")因为它是一个简单的词典.