我刚刚在Django 1.4.5上安装了Pinax,在URL中,主页是TemplateView。我想在主页中添加一些逻辑,所以我评论了那个url,并创建了一个新的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”,变量就会正确填充。但我想让他们像以前一样自动填写。
更糟糕的是,当我尝试登录时,主页仍然显示“已注销”版本,尽管用户已正确登录(当前登录用户的帐户设置显示正确)。
我做错了什么?