繁体   English   中英

我应该如何在Django中更改TEMPLATE_CONTEXT_PROCESSORS?

[英]How should I change TEMPLATE_CONTEXT_PROCESSORS in Django?

我正在尝试使用Django Social Auth 应用程序来处理从各种社交媒体网站登录我的网站。

此处处理示例代码时,该示例对TEMPLATE_CONTEXT_PROCESSORS使用以下设置:

TEMPLATE_CONTEXT_PROCESSORS = (    
    'django.core.context_processors.debug',
    'django.core.context_processors.i18n',
    'django.core.context_processors.media',
    'django.contrib.messages.context_processors.messages',
    'social_auth.context_processors.social_auth_by_type_backends',
    'django.contrib.auth.context_processors.auth',
)

但是,如果我使用这些设置,我的静态媒体网址将被忽略(css / js / images不可用),我认为它会覆盖其他一些上下文设置。 如何检查是否有更多上下文设置应包括在内?

我认为你需要将django.core.context_processors.static添加到上下文处理器列表中。

那么,也许有通过快速阅读的文档上服务静态文件-的过程取决于您的设置。

很难说你在那里还需要什么,我认为你已经拥有了django默认放在那里的一切(当你运行python django-admin.py startapp )。 浏览我正在处理的当前项目之一,我有django.core.context_processors.request将请求对象传递给模板和一个自定义context_processor,但显然你添加的内容取决于你的具体要求。

你有没有设置STATICFILES_DIRS 此外,您应该将django.core.context_processors.static添加到TEMPLATE_CONTEXT_PROCESSORS并使用STATIC_URL寻址静态文件。

静态文件的文档通常也是一个很好的阅读。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM