首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >STATIC_URL没有在Django 1.5上工作

STATIC_URL没有在Django 1.5上工作
EN

Stack Overflow用户
提问于 2013-10-29 17:59:05
回答 2查看 667关注 0票数 0

我无法加载.css和.js文件。这就是我在服务器上输出的内容:

29/Oct/2013 11:33:26 "GET /static/srt/css/django-admin-widgets.css HTTP/1.1“404 1700

29/Oct/2013 11:33:26 "GET /static/srt/js/django-admin.multiselect.js HTTP/1.1“404 1706

settings.py:

代码语言:javascript
复制
MEDIA_ROOT = os.path.join(PROJECT_DIR, 'media')
MEDIA_URL = '/media/'
STATIC_ROOT = os.path.join(PROJECT_DIR, 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(PROJECT_DIR, 'staticfiles'),
)

urls.py:

代码语言:javascript
复制
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'srt_project.views.home', name='home'),
# url(r'^srt_project/', include('srt_project.foo.urls')),

# Uncomment the admin/doc line below to enable admin documentation:
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
url(r'^accounts/', include('registration.backends.default.urls')),
# Uncomment the next line to enable the admin:
url(r'^admin/', include(admin.site.urls)),
# url(r'^accounts/', include('registration.urls')),

url(r'^srt/', include('srt.urls', app_name='srt')),
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

urlpatterns += staticfiles_urlpatterns()

site_base.html

代码语言:javascript
复制
{% load static from staticfiles%}
<!DOCTYPE html>
<html>
<head>
    <title>Status Reporting Tool</title>
    <link rel="stylesheet" type="text/css" href="{% static 'srt/css/django-admin-widgets.css' %}" />
    <script type="text/javascript" src="{% static 'srt/js/django-admin.multiselect.js' %}"></script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
    <script>
        jQuery.each($("select[multiple]"), function () {  
        // "Locations" can be any label you want  
        SelectFilter.init(this.id, "Viewers", 0, "/static/srt/");  
        });  
    </script>

目录结构:

代码语言:javascript
复制
.---srt_project
|   manage.py
|                   
+---srt
|   |   admin.py
|   |   forms.py
|   |   models.py
|   |   tables.py
|   |   tests.py
|   |   urls.py
|   |   views.py
|   |   __init__.py
|               
\---srt_project
    |   settings.py
    |   srt_project.sqlite
    |   urls.py
    |   wsgi.py
    |   __init__.py
    |   
    \---static
        \---srt
            +---css
            |       django-admin-widgets.css
            |       
            \---js
                    django-admin.multiselect.js
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-29 18:56:02

好的,我在.js和.css文件上得到了一个304,看起来我已经修复了它。我只需将文件夹名从“静态”更改为“静态文件”,在我的内部srt_project目录中。虽然对我来说这是不可能的,但是如果“静态”现在是“静态文件”的话:

代码语言:javascript
复制
[29/Oct/2013 12:50:48] "GET /static/srt/css/django-admin-widgets.css HTTP/1.1" 304 0
[29/Oct/2013 12:50:48] "GET /static/srt/js/django-admin.multiselect.js HTTP/1.1" 304 0

谁能解释一下吗?

票数 1
EN

Stack Overflow用户

发布于 2013-10-29 18:28:38

下面是要检查的事项列表:

  • 你把django.contrib.staticfiles包括在INSTALLED_APPS里了吗
  • 你把srt包括在INSTALLED_APPS里了吗
  • DEBUG = True还是False?如果是False,那么staticfiles_urlpatterns就不能工作了。
  • (在部署中)运行了python manage.py collectstatic吗?
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19665780

复制
相关文章

相似问题

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