2014-05-02 68 views
0

我剛開始使用Django 1.6和我的CSS不工作既不是我的圖片,我得到一個404錯誤,即使管理員(一個或多個CSS不工作靜態文件未找到

這裏是我的文件結構:

myproject 
--myproject 
----templates 
--static 
----css 
----media 
--myapp 
--mp.db 
--manage.py 

這是我base.html文件:

<link rel="image_src" href="{% block image_src %}http://{{ request.META.HTTP_HOST }}/static/images/logo.png{% endblock %}" /> 
<link rel="stylesheet" media="screen" href="{{ STATIC_URL }}css/utils.css"> 
<link rel="stylesheet" media="screen" href="{{ STATIC_URL }}css/{% block style_link %}style{% endblock %}.css"> 
    ... 
<div id="cont_footer" class="container centerAuto"> 
<img src="{{ MEDIA_URL }}images/logo_footer.png" alt="" /> 
</div> 

這是我的設置:

PROJECT_ROOT = os.path.dirname(__file__) 
PROJECT_NAME = os.path.basename(PROJECT_ROOT) 

STATIC_ROOT = os.path.join(PROJECT_ROOT, 'static/') 
STATIC_URL = '/static/' 

# Additional locations of static files 
STATICFILES_DIRS = (
    os.path.join(PROJECT_ROOT, 'static/'), 
) 

STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder', 
    'django.contrib.staticfiles.finders.AppDirectoriesFinder', 
) 
TEMPLATE_CONTEXT_PROCESSORS = (
    'django.contrib.auth.context_processors.auth', 
    'django.core.context_processors.static', 
) 
MEDIA_URL = STATIC_URL +'media/' 
MEDIA_ROOT = os.path.join(PROJECT_ROOT, *MEDIA_URL.strip("/").split("/")) 

在urls.py:

urlpatterns = patterns('', 
url(r'^$', TemplateView.as_view(template_name='index.html'), name="index"), 
    url(r'^admin/', include(admin.site.urls)), 
) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) 

什麼我做錯了,我拉我的頭髮了,因爲這個,因爲已經三天!

感謝

回答

0

新建文件夾在你的項目的根在那裏settings.py存在

在settings.py

STATIC_ROOT = os.path.join(PROJECT_DIR,'static') 
STATIC_URL = '/static/' 

STATICFILES_DIRS = (
       os.path.join(PROJECT_DIR,'static'), 
) 
TEMPLATE_DIRS = (
       os.path.join(PROJECT_DIR,'template'), 
) 

在base.html文件

<link rel="stylesheet" type="text/css" href="{% static 'css/demo.css' %}" /> 

<script type="text/javascript" src="{% static 'js/jquery.min.js' %}"></script> 

「靜態」在其他模板文件中,您可以使用base.html

{% extends "base.html" %} 
{% load static %} 


<script type="text/javascript" src="{% static 'js/jquery.min.js' %}"></script> 


<div id="yourID" class="yourClass"> 
    <img src="{% static "images/something.gif" %}" alt="something" > 
</div> 

urls.py

from django.conf.urls import patterns, include, url 
from wepl.views import home 
from django.conf.urls.static import static 
from django.contrib.staticfiles.urls import staticfiles_urlpatterns 
from myApp import settings 
from django.views.generic.base import TemplateView 
from views import * 

urlpatterns = patterns('', 
    url(r'^$', 'myApp.views.home', name='home'), 

    ) 

urlpatterns += staticfiles_urlpatterns() 
+0

我的靜態文件夾是根,因爲我在我的問題提到的,我做你建議的修改,但它仍然沒有工作!我做錯了什麼?因爲這兩天,我正在拉我的頭髮! – Armance