【问题标题】:Connecting js to html in django not working在django中将js连接到html不起作用
【发布时间】:2020-07-21 18:53:55
【问题描述】:

我正在尝试将 js 连接到 django 中的 html。

当我在 html 文件中包含脚本时,它会执行命令,但是我创建了单独的 js 文件并链接到 django,因此它不起作用,而我链接 css 文件并且它工作正常,

我正在学习和使用教程,其中一些是旧的,我不知道我是否使用旧样式,这就是为什么将 js 链接到 django 不起作用。如果您能帮助了解我做错了什么,我会很高兴:

index.html

<!DOCTYPE html>
{% load static %}

<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">

    <link rel="stylesheet" href="{% static 'school/css/main.css' %}">

  </head>
  <body>

    <div>{% block content %}{% endblock  %} </div>

    <script type="text/javascript" scr="{% static 'school/js/main.js' %}"> </script>

  </body>

</html>

settings 我有:

STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR,'static')]

main.js 文件:

alert ("Hello");

我的 django 版本是我的django version is 2.2.6

【问题讨论】:

  • 能否提供静态文件的完整路径?
  • 完整路径是什么意思?我是 django 的新手,您的意思是 STATICFILES_DIRS = [os.path.join(BASE_DIR,'static')] 或静态文件的文件夹位置:static/school/js/main.js?
  • 这个:static/school/js/main.jsstatic 文件夹在哪里?在您的school 应用程序中?还是在您的项目文件夹中?
  • 是的,它位于学校项目的静态文件夹中。
  • 学校项目的主要网址在哪里,然后在它下面我创建了静态文件夹,并在该文件夹下创建了文件夹 school/js/main.js

标签: javascript django


【解决方案1】:

根据您使用的 Django 版本,{% load staticfiles %} 不再存在。我认为这已被 Django 2 删除。

我刚刚发现了这个: {% load static %} and {% load staticfiles %}: which is preferred?

【讨论】:

  • 那我应该用什么?因为 {% load staticfiles %} 适用于我的 css。
  • 我的django版本是2.2.6
  • 我改成 {% load static %} 还是不行
猜你喜欢
  • 2022-11-30
  • 1970-01-01
  • 2014-11-17
  • 1970-01-01
  • 1970-01-01
  • 2017-09-14
  • 2022-01-27
  • 2016-12-08
  • 2016-12-27
相关资源
最近更新 更多