基于类的视图是将视图视为 Python 对象(而非函数)的另一种方案。由于视图表示为一种可调用的程序,接收 Web 请求并返回 Web 响应,因而可将视图定义为类方法。Django 对此提供了视图基类,且均继承自View 类,并用于处理 HTTP 方法调度和其他常见功能。
对于某些应用场合来说,基于类的视图优于基于函数的视图,主要体现在以下几个方面:
- 在独立的方法中组织与 HTTP 方法相关的代码,如 GET、POST或 PUT。
- 采用多重继承创建可复用的视图类(也称作混入类)。
关于基于类的视图,读者可以访问 https://docs.djangoproject.com/en/3.0/topics/classbased-views/intro/ 以了解更多内容。