0

我正在尝试在 django 中实现代码。我的代码正常工作。但是,当我尝试在 django 中使用时。似乎javascript无法正常工作。为什么它在 django 中不起作用?如何运行使用 javascript 的 html 页面?

* html 页面位于我的模板文件夹中,在此文件夹中,我还有一个类似scripts/.

4

2 回答 2

1

* html 页面位于我的模板文件夹中,在此文件夹中,我还有 scripts/spryMap-2.js 之类的文件夹

您的模板文件夹中不应包含静态文件(例如 spryMap-2.js)。它应该放在您的静态文件文件夹中。然后你用这样的东西加载你的脚本

<script type="text/javascript" src="{{ STATIC_URL }}scripts/spryMap-2.js"></script>

更新:我不确定为什么我的回答被否决了。我已经扩展了我的答案,以提供更详细的说明来修复您的静态文件。

问题是您的静态文件未正确提供 - 因此当您尝试直接访问 js 文件时出现 404。正如我上面提到的,模板文件夹不是静态文件的正确位置。您应该配置您的STATIC_ROOTSTATIC_URL设置。例如

#Make this the path to the folder where you will keep your static files
STATIC_ROOT = '/path/to/your/project/static'
#The absolute or relative URL which will serve your static files
STATIC_URL = '/static/' #translates to http://localhost:8000/static/, for example

为了让 django 开发服务器为您的静态文件提供服务,您需要在 urls.py 中添加以下内容

from django.contrib.staticfiles.urls import staticfiles_urlpatterns

# ... the rest of your URLconf goes here ...

urlpatterns += staticfiles_urlpatterns()
于 2012-11-29T00:03:28.293 回答
0

我刚刚检查了这段代码,它似乎工作正常,也许尝试检查脚本源路径标记。我用了

<script src="{{ STATIC_URL }}assets/js/spryMap-2.js"></script>

代替

<script type="text/javascript" src="scripts/spryMap-2.js"></script>

我得到了可拖动的附加输出: 上述问题的附加输出

如果您使用的是 Django,请确保您在设置文件中提及静态路径的正确路径,并将您的 sprymap.js 文件放到该位置,我想这将解决问题。

于 2012-11-29T00:05:13.927 回答