本页的前两段解释了通用 View 应该让我的生活更轻松,不那么单调,让我对女性更具吸引力(最后一段是我编造的):
https://docs.djangoproject.com/en/1.4/topics/generic-views/
我完全是为了改善我的生活,但通用 View 实际上有什么作用?似乎有很多流行语被抛出,这比他们解释的更令人困惑。
通用 View 是否类似于 Ruby on Rails 中的脚手架?介绍中的最后一个要点似乎表明了这一点。这是一个准确的说法吗?
最佳答案
Django 通用 View 只是执行 Web 应用程序中非常常见的事情的 View 函数(常规的旧 Python 函数)。
根据您正在构建的应用类型,它们可以让您免于编写大量非常简单的 View 。
例如,direct_to_template
通用 View 仅使用 RequestContext
呈现模板(这意味着模板可以访问有关请求的信息,例如当前用户等)。
举个简单的例子,你可以这样写:
# urls.py
url('^some-url/$', some_view)
# views.py
def some_view(request):
return render_to_response('template_name.html', context_instance=RequestContext(request))
仅此:
# urls.py
url('^some-url/$', direct_to_template, {'template': 'template_name.html'})
# views.py doesn't need any code for this view anymore
还有更复杂的通用 View 用于常见操作,例如“显示模型列表”或“将模型添加到数据库”。
此外,由于通用 View 只是函数,因此当您需要一些与通用情况不同的东西时,您可以在自己的 View 函数中调用它们来完成“大部分工作”。
关于python - 简而言之,什么是 Django 通用 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2437468/