Django:视图:类与函数

Django:视图:类与函数,django,django-views,Django,Django Views,我正在做一个小的Django项目,我注意到有不同的方式来编写视图 用类创建的视图和用函数创建的视图有什么区别 我什么时候应该用哪一种 谢谢 使用基于类的视图最重要的优点是继承 在处理大型项目时,很可能会遇到多个具有类似用途的视图,因此您可以继承基于类的视图来编写新的更具体的视图,该视图是为所需的方法定制的,或者您也可以直接重用已定义的视图(如果它符合目的的话) 通常,当基于类的视图变得过于复杂而无法实现时,会使用基于函数的视图 如果您正在处理一个小项目,您可以使用基于函数的视图,因为在您看来,基

我正在做一个小的Django项目,我注意到有不同的方式来编写视图

用类创建的视图和用函数创建的视图有什么区别

我什么时候应该用哪一种


谢谢

使用基于类的视图最重要的优点是继承

在处理大型项目时,很可能会遇到多个具有类似用途的视图,因此您可以继承基于类的视图来编写新的更具体的视图,该视图是为所需的方法定制的,或者您也可以直接重用已定义的视图(如果它符合目的的话)

通常,当基于类的视图变得过于复杂而无法实现时,会使用基于函数的视图


如果您正在处理一个小项目,您可以使用基于函数的视图,因为在您看来,基于类的视图编写起来有点麻烦(至少我觉得这样)。

它与过程编程和面向对象编程有着相同的区别。为极其简单的视图编写函数是有意义的,但不能超出此范围。没有什么比将400行代码塞进一个名为view的大函数更糟糕的了,它成为了阅读、重构或测试的噩梦

除此之外,Django泛型视图利用模板方法设计模式,并为泛型用例提供大量已编写的通用代码,这些代码通常可以轻松扩展到用户的需要