Django应用程序模板扩展了根模板

时间:2019-03-25 18:04:14

标签: django django-templates jinja2

我已经阅读了文档,但是我正努力了解django查找模板的顺序。

我的模板设置:

TEMPLATES = [
    {
        "BACKEND": "django.template.backends.jinja2.Jinja2",
        "DIRS": [],
        "APP_DIRS": True,
    },
    {
        "BACKEND": "django.template.backends.django.DjangoTemplates",
        "DIRS": [],
        "APP_DIRS": True,
        "OPTIONS": {
            "context_processors": [
                "django.template.context_processors.debug",
                "django.template.context_processors.request",
                "django.contrib.auth.context_processors.auth",
                "django.contrib.messages.context_processors.messages",
            ]
        },
    },
]

我在项目的根目录下有一个“模板”文件夹,其结构如下:

templates
└── jinja2
    └── emails
        ├── base_email.html
        └── base_email.plain

每个应用程序都有其自己的“模板文件夹”,如下所示:

templates
└── jinja2
    └── emails
        └── account
            ├── validate_email.html
            └── validate_email.plain

模板的命名如下:

render_to_string(
        "jinja2/emails/account/validate_email.html", context
    )

这似乎能够找到初始模板(validate_email),但是当验证电子邮件尝试扩展“ base_email”时:

{% extends "base_email.html" %}

我尝试将以下extends标记替换为:

{% extends "jinja2/emails/base_email.html" %}

但这没什么区别。

0 个答案:

没有答案