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 %}
...

附带说明一下,最好有一个与您的应用程序不同的登录和注册基础,尤其是当您需要用户登录时,因为这些页面上不会显示很多内容,例如导航栏。