【问题标题】:Django unable to read script in blockDjango无法读取块中的脚本
【发布时间】: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 %} 标签内时无法读取我的&lt;script&gt;,或者让 Django 与标签混淆。

我尝试只使用一个{% block %} 标记并将script 放置在“子”模板中,并且显示了相同的错误消息。当我将&lt;script&gt; 放在父 'private_base.html' 和任何{% block %} 之外时,脚本和网站运行得很好。

谢谢~~

【问题讨论】:

  • 尝试使用内容而不是body_block
  • 感谢您的回复@AkshatZala,我刚刚尝试将“body_block”更改为“内容”,仍然显示相同的错误

标签: django django-templates


【解决方案1】:

将 {% load static %} 添加到 search_result.html

【讨论】:

    【解决方案2】:

    添加

    {% load static %}  
    

    search.html 在第一行

    【讨论】:

    • 嗨 @AkshatZala,{% load static %} 已经在 private_base.html 中,将 {% load static %} 更改为我的 html 文档的第一行也无济于事
    【解决方案3】:

    search_result.html 的第一行必须是 {% load 'static' %}

    【讨论】:

      猜你喜欢
      • 2019-06-29
      • 2014-07-09
      • 1970-01-01
      • 2022-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-06
      • 1970-01-01
      相关资源
      最近更新 更多