使用内置视图登录

时间:2013-03-27 10:08:38

标签: python django django-templates

我正在使用内置视图执行用户登录:

(r'^login/$', 'django.contrib.auth.views.login', {'template_name':'login.html'}),

其中login.html是模板。 login.html已正确加载。但是我需要将我的变量传递给模板。我自己的观点我正在以下列方式做( STATIC_URL ):

class AboutView(TemplateView):
template_name = 'about.html'

def get_context_data(self, *args, **kwargs):
    context = super(AboutView, self).get_context_data(*args, **kwargs)
    context['STATIC_URL'] = settings.STATIC_URL
    return context

那么,如何使用内置的“django.contrib.auth.views.login”视图将“STATIC_URL”传递给“login.html”?

3 个答案:

答案 0 :(得分:1)

STATIC_URL应该通过django自己的上下文处理器自动传递。在您的设置文件中,您需要定义STATIC_URL。还要确保加载了适当的上下文处理器。

'django.core.context_processors.static'

答案 1 :(得分:1)

参考此网址https://docs.djangoproject.com/en/dev/howto/static-files/

您可以按照相同的流程来获得所需的内容。

答案 2 :(得分:1)

您无需明确传递STATIC_URL。您可以使用django的上下文处理器'django.core.context_processors.static',默认情况下已启用。

确保在从模板呈现响应时使用RequestConext()

您可以通过其他方式在模板here

中引用STATUS_URL