据源的
django.views.generic.base.View.as_view:
- 在Django启动时 ,as_view()返回一个函数
view
,该函数 未 调用 - 根据要求 ,
view()
称为 ,它实例化该类并调用dispatch()
- 该类实例是线程安全的
据源的
django.views.generic.base.View.__init__,请求对象超出范围在这一点上,所以你不能在自己的构造函数重载解析它。
但是,您可以解析请求并以的重载设置类视图实例属性,
django.views.generic.base.View.dispatch根据消息来源,这是安全的:
class YourView(SomeView): def dispatch(self, request, *args, **kwargs): # parse the request here ie. self.foo = request.GET.get('foo', False) # call the view return super(YourView, self).dispatch(request, *args, **kwargs)


