Django 似乎无法识别 jquery - 现在是啥>
Posted
技术标签:
【中文标题】Django 似乎无法识别 jquery - 现在是啥>【英文标题】:Django doesn't seem to be recognizing jquery - what now>Django 似乎无法识别 jquery - 现在是什么> 【发布时间】:2011-06-26 08:02:32 【问题描述】:我急需帮助。我关注了许多教程,并仔细阅读了this、this、this 和this 的文章。在遵循中间两篇文章中提到的静态服务器的 Django 文档时,我收到了错误消息,但我似乎在做这两篇文章中讨论的关于 settings.py 的所有正确事情,将 jquery.js 放在正确的目录中并引用实际 html 文件中的正确源。
我的媒体目录似乎被引用了-那里的css文件运行良好,如果我转到http://127.0.0.1:8000/media/jquery.js,就会显示jquery文件。
不过,我在遵循多个教程后构建的函数都不适用于我的 django 项目。几天来我一直在用头撞墙 - 如果可以,请提供帮助。
Django 应用项目文件:
__init__.py data.db javascript_app/ manage.py media/ settings.py templates/ urls.py views.py
Javascript 应用目录:
__init__.py admin.py models.py tests.py urls.py views.py
媒体目录:
jquery.js style_js.css
模板目录:
javascript_app/
base.html note_list.html
在我的主设置文件中:
import os.path ROOT_PATH = os.path.dirname(__file__)
...MEDIA_ROOT = os.path.join(os.path.dirname(__file__), "media") MEDIA_URL = 'http://127.0.0.1:8000/media/' ADMIN_MEDIA_PREFIX = '/media/admin/'
在我的主 urls 文件中:
from django.conf.urls.defaults import * from django.views.static import * from django.conf import settings ... urlpatterns = patterns('', (r'^media/(?P<path>.*)$', 'django.views.static.serve', 'document_root': settings.MEDIA_ROOT ),
无奈之下,我还在 javascript_app 的 urls.py 中添加了媒体引用(也使用了上面引用的导入命令):
urlpatterns = patterns('', (r'^media/(?P<path>.*)$', 'django.views.static.serve', 'document_root': settings.MEDIA_ROOT ),
在 templates/javascript/base.html:
<head>
<title>% block title %Notes Application% endblock %</title>
<link rel="stylesheet" href="/media/style_js.css">
<script type="text/javascript" src="/jennystanchak/media/jquery.js"></script>
</head>
最后在 templates/javascript/note_list.html:
% extends "javascript/base.html" %
% block content %
...<script>
// my script here
</script>
% endblock %
我在配置中缺少什么?
非常感谢您的帮助:) -- 一个有抱负的女程序员
【问题讨论】:
为什么这样:src="/jennystanchak/media/jquery.js" ? 我读到的一篇关于堆栈溢出的文章建议添加目录文件(jennystanchak 是 django 项目名称)。当我有 src="/media/jquery.js" 时,javascript 仍然无法工作。 你能粘贴你的页面呈现的html吗?我的意思是在您的网络浏览器中查看源代码的输出。 项目名称不属于那里 - 正如 Eric 指出的那样。您是否尝试过使用 firebug 查看页面?如果你在 firebug 中进入控制台并输入 $("*") 你会看到什么? 【参考方案1】:<script type="text/javascript" src="/jennystanchak/media/jquery.js"></script>
路径不应该是src="/media/jquery.js"
没有/jennystanchak
吗?
【讨论】:
以上是关于Django 似乎无法识别 jquery - 现在是啥>的主要内容,如果未能解决你的问题,请参考以下文章
Django OAuth 2 客户端设置 - 客户端无法识别令牌
IBM Worklight - jQuery 无法识别 html 页面上的任何元素
Jquery Slidetoggle - 似乎无法开始关闭?