我正在学习Django,我已经完成了2个教程 - 官方和惊人的教程,名为Tango With Django。虽然,我得到了我需要工作的一切,但我有一个问题:
在Tango中使用Django不使用基于类的视图 - 只链接到官方教程。
为什么他们不包含这些信息?
我们何时应该使用基于类的视图,这是一个好习惯吗?
答案 0 :(得分:2)
基于类的视图允许您通过利用继承和mixin来构建视图并重用代码。 https://docs.djangoproject.com/en/1.8/topics/class-based-views/
例如,您可以从“TemplateView”类继承,该类提供了您可能需要在自己的视图中使用的一些功能。例如,您可以重复使用“get”方法。
# some_app/views.py
from django.views.generic import TemplateView
class AboutView(TemplateView):
template_name = "about.html"
答案 1 :(得分:1)
我们使用基于类的视图(CBV' s)来减少执行重复任务所需的代码量,例如呈现表单或模板,列出查询集中的项目等。
使用CBV可以大大减少所需的代码量,应该尽可能地使用。
答案 2 :(得分:0)
在CRM系统中使用是很好的。您有一个列表视图,项目视图,删除视图等,如博客。 CBV可以帮助您编写更少的代码。
但也因为它对你做了太多。有时候做一些自定义或添加一些额外的逻辑会有点麻烦。在这种情况下,它更适合那些真正熟悉和熟悉CBV的人,以便他们可以轻松地改变它。