我有 3 个 Django 模板:
base.html
<title>{% block title %} SITE NAME {% endblock %}</title>
default.html
{% extends "base.html" %}
{% block title %} {{ block.super }} - SECTION NAME {% endblock %}
main.html
{% extends "default.html" %}
{% block title %} {{ block.super }} {% endblock %}
我想在模板中获取站点名称 main.html 即父块的父块的内容。类似的东西
{{ block.super.super }}
这可能吗?
最佳答案
我不认为这是可能的。仅针对您的特定问题,我想如果您将站点名称放在块之前,并使用块只是在站点名称后附加一些内容,则可以解决。
否则你可以定义 SITE_NAME
在您的 settings.py
并有一个上下文处理器,如
from django.conf import settings
def site_name(request):
return {'SITE_NAME': settings.SITE_NAME}
以便您可以使用
{{ SITE_NAME }}
在您的模板中 - 这可能是有意义的,因为站点名称在其他地方也可能有用......
关于django - 使用 block.super 附加到 Django 模板中的站点 <title>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4323364/