django 模板继承:如何不显示来自父模板的块?
django template inheritance: how to NOT display a block from parent template?
我们如何在子模板中隐藏由父模板呈现的块?
例如:我的父模板
base.html
包含-
<!DOCTYPE html>
<html lang="en">
....
<body>
{% block messages %}
<div class="alert alert-{% if message.tags == 'error'%}danger{% else %}{{ message.tags }}{% endif %} alert-dismissible fade in" role="alert">
{{message}}
</div>
{% endblock %}
...
</body>
</html>
我在login.html
中继承了这个base.html
但我不想在 login.html
中使用 {% block messages %},
有什么建议么?
提前感谢任何解决方案。
您可以在 login.html 中覆盖 {% block messages %}
,例如:
login.html
{% extends "base.html" %}
{% block messages %}{% endblock %}
...
附带说明一下,最好有一个与您的应用程序不同的登录和注册基础,尤其是当您需要用户登录时,因为这些页面上不会显示很多内容,例如导航栏。
我们如何在子模板中隐藏由父模板呈现的块?
例如:我的父模板
base.html
包含-
<!DOCTYPE html>
<html lang="en">
....
<body>
{% block messages %}
<div class="alert alert-{% if message.tags == 'error'%}danger{% else %}{{ message.tags }}{% endif %} alert-dismissible fade in" role="alert">
{{message}}
</div>
{% endblock %}
...
</body>
</html>
我在login.html
中继承了这个base.html
但我不想在 login.html
中使用 {% block messages %},
有什么建议么?
提前感谢任何解决方案。
您可以在 login.html 中覆盖 {% block messages %}
,例如:
login.html
{% extends "base.html" %}
{% block messages %}{% endblock %}
...
附带说明一下,最好有一个与您的应用程序不同的登录和注册基础,尤其是当您需要用户登录时,因为这些页面上不会显示很多内容,例如导航栏。