是否有一种方法可以从任意模板访问settings
模块的ADMINS
变量,而无需在渲染前手动将其添加到上下文中,类似于如果django.core.context_processors.request
在TEMPLATE_CONTEXT_PROCESSORS
中,则request
在使用RequestContext
的任何模板中可用?
您可以编写自己的上下文处理器(这是一个以request
为参数的常规函数):
from django.conf import settings
def admin_emails(request):
return { 'ADMINS': settings.ADMINS }
并且将CCD_ 8添加到CCD_。
我会使用一个模板标签,就像这个问题所讨论的那样:我可以从Django中的模板访问settings.py中的常量吗?
具体来说,我使用这个答案中的代码:https://stackoverflow.com/a/6343321/2250326
有了它,你可以在你的模板中获得AMDINS,如下所示:
{% value_from_settings "ADMINS" as admins %}
{% for admin in admins %}
Name: {{ admin.0 }}<br />
Email: {{ admin.1 }}
{% endfor %}