Django 首页最佳/最常见做法
我现在在做一个网站(这是我第一次单独做),我想创建一个首页。我一直在努力遵循django的最佳实践,所以我自然去搜索了一下,但没有找到一个真正的标准来指导我。
我看到有些人创建了不同名字的应用来实现这个功能,比如“main”、“home”、“misc”等等,并且在项目的根目录下有一个views.py文件。我其实只是想知道大多数人是怎么做的。
这个首页不是静态的,因为我想检测用户是否登录等等。
谢谢。
2 个回答
3
我通常会在项目的根目录下创建一个 views.py
文件,在里面放置 index
这个视图。
19
如果你所有的动态内容都在模板里处理(比如说,只是简单地检查请求中是否有用户),那么我建议你使用一个通用视图,特别是这个叫做直接渲染模板的视图:
urlpatterns = patterns('django.views.generic.simple',
(r'^$', 'direct_to_template', {'template': 'index.html'}),
)
如果你想在模板上下文中添加一些额外的信息,可以使用另一个参数,叫做extra_context
,你可以把它传给这个通用视图来包含这些信息:
extra_context = {
'foo': 'bar',
# etc
}
urlpatterns = patterns('django.views.generic.simple',
(r'^$', 'direct_to_template', {'template': 'index.html', 'extra_context': extra_context }),
)