【发布时间】:2020-10-17 18:58:48
【问题描述】:
我目前正在做一个 Django 项目。
对于我的一个应用程序,我有一个“private_base.html”模板,其中包含 2 个块:“body_block”和“js_block”。
private_base.html
<!DOCTYPE html>
{% load static %}
<html lang="en" dir="ltr">
<head>
<link rel="stylesheet" href="{% static 'css/bootstrap.css' %}">
<link rel="stylesheet" href="{% static 'css/private_base.css' %}">
<meta charset="utf-8">
<title></title>
</head>
<body>
<div class="sidenav">
<!-- side navbar -->
</div>
<div class="main">
{% block body_block %}
{% endblock %}
</div>
{% block js_block %}
{% endblock %}
</body>
</html>
我正在将此基本模板扩展为“search_result.html”
search_result.html
{% extends 'private_base.html' %}
{% block body_block %}
<!-- contents -->
{% endblock %}
{% block js_block %}
<script src="{% static "js/group_search.js" %}" type="text/javascript"></script>
{% endblock %}
当我访问该网站时,我收到以下错误消息:
“/group/search_result/ 处的模板语法错误 第 41 行的块标记无效:“静态”,预期为“结束块”。您忘记注册或加载此标签了吗?”
我想问一下我是否遗漏了什么,或者做错了什么导致 Django 在{% block %} 标签内时无法读取我的<script>,或者让 Django 与标签混淆。
我尝试只使用一个{% block %} 标记并将script 放置在“子”模板中,并且显示了相同的错误消息。当我将<script> 放在父 'private_base.html' 和任何{% block %} 之外时,脚本和网站运行得很好。
谢谢~~
【问题讨论】:
-
尝试使用内容而不是body_block
-
感谢您的回复@AkshatZala,我刚刚尝试将“body_block”更改为“内容”,仍然显示相同的错误