如何在Django中运行Javascript?

如何在Django中运行Javascript?,javascript,python,html,django,Javascript,Python,Html,Django,这是我第一次做这样的事情,谷歌对我帮助不大。我可以让Javascript作为html的一部分工作,但不能作为它自己的文件 我已经设置了静态文件,它们适用于我的CSS,但我无法从静态文件夹运行任何Javascript 路径如下: 这在我的“base.html”中 这是“all_pages.js” 警报(“测试2”); 这是base的一个扩展名为“test.html” {%extends'base.html%} {%block content%} {%load static%} 警报(“测试

这是我第一次做这样的事情,谷歌对我帮助不大。我可以让Javascript作为html的一部分工作,但不能作为它自己的文件

我已经设置了静态文件,它们适用于我的CSS,但我无法从静态文件夹运行任何Javascript

路径如下:

这在我的“base.html”中


这是“all_pages.js”

警报(“测试2”);
这是base的一个扩展名为“test.html”

{%extends'base.html%}
{%block content%}
{%load static%}
警报(“测试01”);
{%endblock%}
我只收到警报“测试01”

我希望得到“测试01”和“测试02”

编辑:

Full base.html

{%load static%}
{%if user.u经过身份验证%} {%endif%} {%if user.u经过身份验证%} {%endif%} {%如果不是user.is_身份验证%} {%endif%} {%如果不是user.is_身份验证%} {%endif%} {%block content%} {%endblock%}
设置.py

“”“
pyshop项目的Django设置。
由使用django 3.0.7的“django admin startproject”生成。
有关此文件的详细信息,请参阅
https://docs.djangoproject.com/en/3.0/topics/settings/
有关设置及其值的完整列表,请参见
https://docs.djangoproject.com/en/3.0/ref/settings/
"""
导入操作系统
#在项目内部构建如下路径:os.path.join(BASE_DIR,…)
BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(u文件_u)))
#快速启动开发设置-不适合生产
#看https://docs.djangoproject.com/en/3.0/howto/deployment/checklist/
#安全警告:不要在生产环境中打开调试的情况下运行!
调试=真
允许的_主机=[]
#应用程序定义
已安装的应用程序=[
“django.contrib.admin”,
“django.contrib.auth”,
“django.contrib.contenttypes”,
“django.contrib.sessions”,
“django.contrib.messages”,
“django.contrib.staticfiles”,
'产品.应用程序.产品配置',
'特许经营.应用程序.特许经营配置',
“accounts.apps.AccountsConfig”,
“调试工具栏”
]
中间件=[
'django.middleware.security.SecurityMiddleware',
“django.contrib.sessions.middleware.SessionMiddleware”,
'django.middleware.common.CommonMiddleware',
“django.middleware.csrf.CsrfViewMiddleware”,
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.xFrameOptions中间件',
“调试工具条.中间件.调试工具条中间件”,
]
内部_IPS=(“http://127.0.0.1/")
ROOT_URLCONF='pyshop.url'
模板=[
{
'BACKEND':'django.template.backends.django.DjangoTemplates',
“DIRS”:[
join(基本目录'templates')
],
“应用程序目录”:正确,
“选项”:{
“上下文处理器”:[
“django.template.context_processors.debug”,
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
WSGI_应用程序='pyshop.WSGI.APPLICATION'
#数据库
# https://docs.djangoproject.com/en/3.0/ref/settings/#databases
数据库={
“默认值”:{
“引擎”:“django.db.backends.sqlite3”,
'NAME':os.path.join(BASE_DIR'db.sqlite3'),
}
}
#密码验证
# https://docs.djangoproject.com/en/3.0/ref/settings/#auth-密码验证器
验证密码验证程序=[
{
'NAME':'django.contrib.auth.password\u validation.UserAttributesMilarityValidator',
},
{
'NAME':'django.contrib.auth.password\u validation.MinimumLengthValidator',
},
{
'NAME':'django.contrib.auth.password\u validation.CommonPasswordValidator',
},
{
'NAME':'django.contrib.auth.password\u validation.NumericPasswordValidator',
},
]
#国际化
# https://docs.djangoproject.com/en/3.0/topics/i18n/
语言代码='en us'
时区='UTC'
使用_I18N=True
使用\u L10N=True
使用_TZ=True
#静态文件(CSS、JavaScript、图像)
# https://docs.djangoproject.com/en/3.0/howto/static-files/
静态URL='/STATIC/'
STATIC\u ROOT=os.path.join(BASE\u DIR,'ROOT')
静态文件\u目录=[
join(BASE_DIR,'static'),
]  
媒体URL='/MEDIA/'
MEDIA\u ROOT=os.path.join(基本目录,'MEDIA')

尝试添加此ur设置

STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
   )
STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'static'), )

您没有在html中正确调用静态文件。试一试

<script src="{% static 'js/all_pages.js' %}"></script> 

而不是

<script src="/static/js/all_pages.js" type="text/javascript"></script> <!-- Doesn't Work-->


你的js是否在base.html的head标记或body标记中,也许你应该向我们展示你的完整base.html和test.html代码即使你说你的css文件正在工作,也可以添加你的设置文件。body标签不正确though@Ceetified_karma现在补充说。完整的test.html已经存在了。js不在乙醚主体或头部。如果这是它应该做的,那么将它们移动到一个然后移动到另一个似乎并不能解决问题do@Lemayzeur现在补充说。身体标签怎么了?(对所有这些都很陌生,用视频试着自学,所以我错过了很多明显的基本内容)你的浏览器怎么说?你能在y中加载js内容吗