【发布时间】:2013-04-21 11:48:42
【问题描述】:
我刚刚在 Django 1.4.5 上安装了 Pinax,在 urls 中主页是一个 TemplateView。我想在主页中添加一些逻辑,所以我评论了那个 url 并创建了一个新的链接到一个名为 home 的视图。目前我在该视图中什么都不做,我只想重现与 TemplateView 中相同的行为,即加载模板。模板加载,但我丢失了 Pinax 变量,如 SITE_NAME(我确实设置了站点名称,并且在使用 TemplateView 直接加载模板时它确实出现了)。
这是原网址:
url(r"^$", TemplateView.as_view(template_name="homepage.html"), name="home"),
这是我用的:
url(r"^$", home, name="home"),
home 是从一个新创建的应用程序加载的(使用 manage.py startapp,该文件夹与 manage.py 处于同一级别,而不是在项目的文件夹内)
与家庭相连的视图是:
def home(request):
context = {}
return render_to_response('homepage.html', context)
如果我添加一些上下文,例如 'SITE_NAME': 'my site',则变量填充正确。但我想让它们像以前一样自动填充。
更糟糕的是,当我尝试登录主页时,尽管用户已正确登录,但主页仍然显示“已注销”版本(当前登录用户的帐户设置正确显示)。
我做错了什么?
【问题讨论】: