Django样式包括模板

时间:2018-02-05 11:17:19

标签: django

我有三个文件。 我的base.html:

{% load static %}

<head>
    <link href="{% static 'base/css/normalize.css' %}" rel="stylesheet" type="text/css" />
    <link href="{% static 'base/css/base.css' %}" rel="stylesheet" type="text/css" />
    {% block styling %}
    {% endblock %}
</head>
<body>
    {% block content %}
    {% endblock %}
</body>

Project.html:

{% extends "base/base.html" %}
{% load sass_tags %}
{% load static %}

{% block styling %}
<title>Project</title>
<link href="{% sass_src 'dashboard/scss/project.scss' %}" rel="stylesheet" type="text/css" />
{% endblock %}

{% block content %}
    <div class="project-container">
        {% include "dashboard/tree.html" %}...

和tree.html:

{% load sass_tags %}

<link href="{% sass_src 'dashboard/scss/tree.scss' %}" rel="stylesheet" type="text/css" />

<section class="tree">
    <ul class="tree__root">...

总结上述代码; project.html从base.html扩展,project.html也包括tree.html。这按预期工作,并且样式也正确应用。但我对造型的位置感到不满。当我包含tree.html的样式时,它被放在DOM的主体中。我希望它能在头脑中。

我尝试在tree.html中扩展base.html并使用{% block styling %},但是没有用。此外,我尝试在tree.html中定义一个头部也不起作用(不出意外)。

据我所知,我有两个选择。

  • 在project.html的样式块中包含样式(这对我来说似乎没有意义,为什么在另一个模板中包含样板的样式?)

  • 在tree.html中包含样式,但是在头部之外有链接(这对我来说似乎不好看)

这种事情的最佳做法是什么?

0 个答案:

没有答案