首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与Django模板中的pathing混淆

与Django模板中的pathing混淆
EN

Stack Overflow用户
提问于 2015-03-01 12:34:25
回答 1查看 108关注 0票数 2

当我在浏览器中使用url(r'^consultar/$', 'rcb.core.views.consultar'),时,consultar.html文件查找jquery-1.11.2.min.js文件,显示以下信息:

代码语言:javascript
复制
Remote Address:127.0.0.1:8000
Request URL:http://localhost:8000/static/js/jquery-1.11.2.min.js
Request Method:GET
Status Code:200 OK

但是当我在浏览器http://localhost:8000/proposta/consultar/中使用http://localhost:8000/proposta/consultar/时,consultar.html文件找不到jquery-1.11.2.min file.js。出现以下错误:

代码语言:javascript
复制
Remote Address:127.0.0.1:8000
Request URL:http://localhost:8000/proposta/static/js/jquery-1.11.2.min.js
Request Method:GET
Status Code:404 NOT FOUND

有人能帮我修复运行url http://localhost:8000/proposta/consultar/的代码吗?

以下是文件和目录的代码和结构:

consultar.html

代码语言:javascript
复制
{% extends 'base.html' %}
....

base.html

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <script src="../static/js/jquery-1.11.2.min.js" type="text/javascript"></script>
</head>
<body>
    {% block corpo %}{% endblock %}
</body>
</html>

views.py

代码语言:javascript
复制
def consultar(request):
    propostas_salvas=search()
    return render_to_response('consultar.html', { 'propostas_salvas' :  propostas_salvas}, context_instance=RequestContext(request))

我的文件和目录结构是:

代码语言:javascript
复制
rcb (Project)
    core (is the App)
        static
            js
                jquery-1.11.2.min.js
        template
            base.html
            consultar.html
        views.py
        ...
        ...
        ... 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-01 12:47:39

您应该使用相对于您的域的javascript路径,而不是您所请求的文档,因为对于每个文档,javascript的相对路径将是不同的。所以,改变这句话:

代码语言:javascript
复制
    <script src="../static/js/jquery-1.11.2.min.js" type="text/javascript"></script>

转入:

代码语言:javascript
复制
    <script src="/static/js/jquery-1.11.2.min.js" type="text/javascript"></script>

或者更好的是,在模板中加载静态文件并使用django中内置的静态文件管理:

代码语言:javascript
复制
    <script src="{% static "js/jquery-1.11.2.min.js" %}" type="text/javascript"></script>

这样,您以后可以在设置中更改您的STATIC_URL,django将纠正您的静态文件的路径。即使它们位于不同的域(一些CDN或非cookie域仅用于静态文件)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28793582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档