美文网首页
How to overriding templates(djan

How to overriding templates(djan

作者: xncode | 来源:发表于2023-03-06 15:47 被阅读0次

    覆盖其他应用的模板,可以在两个文件路径存放,系统会先装载项目的模板,再装载应用中的模板。

    在项目目录中覆盖

    TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR / 'templates'],
        'APP_DIRS': True,
        ...
    },
    ]
    

    修改DIRS,设置文件路径

    在应用目录中覆盖

    在其他应用中覆盖另一个应用的模板,仍需构造其文件路径,不如直接在项目路径中设置

    继承原有模板

     {% extends "admin/base_site.html" %}
    
     {% block branding %}
     <img src="link/to/logo.png" alt="logo">
     {{ block.super }}
     {% endblock %}
    

    这里继承了原有模板,只修改了branding这一个区,增加一个logo,之后获取block.super将原有模板的内容填充

    相关文章

      网友评论

          本文标题:How to overriding templates(djan

          本文链接:https://www.haomeiwen.com/subject/qzxpldtx.html