2016-02-19 29 views
0

我在Django模板处理下面的代码:在Django传递价值title变量模板

<!-- Override title of base --> 
{% block title %}{{ title }} | {{ site_title|default:_('Hello World') }}{% endblock %} 

对于Django管理网站,标题变量以上(即{{ title }})默认值登录”。这个值在哪里定义?我想改变这个值,但通过它而不是硬编码它。

+0

对于登录/注销/密码重置模板中,'title'定义在'django.contrib.auth.views'中。 – xyres

+0

如何通过传递变量的值而不是硬编码模板中的值来覆盖此值? – Foobar

+0

我认为您需要用自己的视图替换这些视图。但在这种情况下,在模板中硬编码“title”的值似乎是一个更好更简单的选择。 – xyres

回答

0

您可以使用该变量的{{title}}模板,并使用视图来传递内容,就像这样:

template.html 
<title>{{ title }}</title> 

views.py 
def something(request): 
    #Do something 
    return render_to_response('template.html', context_instance=RequestContext(request,{'title':'Here is what you want to show as title'})) 
+0

无论如何,通过定义一个常数而不是改变视图来实现这一点?我不想重写视图,因为我在django.contrib.auth.views中使用视图。 – Foobar

+0

也许这可以帮助你http://stackoverflow.com/questions/28091924/django-admin-change-header-django-administration-text-on-nginx –