Статические файлы Django 1.4 css не применяются

Последние несколько дней я потратил на то, чтобы выяснить, как включить файл css в шаблон Django. У меня все еще не получилось, поэтому надеюсь, что кто-то может мне помочь. У меня следующие настройки:

--settings.py--

MEDIA_ROOT = '' 
MEDIA_URL = ''
STATIC_ROOT = ''
STATIC_URL = '/static/'

Я тоже ничего не установил в STATICFILES_DIRS ().

--urls.py--

urlpatterns = patterns('', (r'^$', 'reviewsite.views.my_homepage_view'),)
urlpatterns += staticfiles_urlpatterns()

--views.py--

def my_homepage_view(request):
return render_to_response('test.html', context_instance=RequestContext(request))

--test.html шаблон -

<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/style.css"/>

- исходный код localhost--

<link rel="stylesheet" type="text/css" href="/static/css/style.css"/>

Согласно документации Django кажется, что я все правильно установил, но стиль css по-прежнему не применяется. Статическая папка находится в правильном месте (C: reviews / reviews / static), где также находятся остальные мои приложения. Даже если я жестко закодирую местоположение style.css (C: reviews / reviewsite / static / css / style.css) в шаблоне test.html, стиль css не применяется. Я проверил style.css, и он работает без Django. Есть идеи, что я делаю неправильно?


person user1899005    schedule 11.03.2013    source источник
comment
Можете ли вы опубликовать структуру папок вашего приложения и указать, где в ней находится ваша статическая папка? Обратитесь к этому ответу и попробуйте. Это может вам помочь.   -  person arulmr    schedule 11.03.2013


Ответы (2)


Вот как вы называете файлы в статике

{% static %}

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

settings.py

import os
import sys

PROJECT_ROOT = os.path.join(os.path.dirname(__file__), '..')
SITE_ROOT = PROJECT_ROOT

MEDIA_ROOT = os.path.join(SITE_ROOT, 'media') 
MEDIA_URL = '/media/'
STATIC_ROOT = os.path.join(SITE_ROOT, 'static')
STATIC_URL = '/static/'

STATICFILES_DIRS = (
    //create staticfiles folder
    os.path.join(SITE_ROOT, 'staticfiles'),
)
person catherine    schedule 11.03.2013

Всем спасибо за помощь и извините за поздний ответ. Я попробовал ваши предложения, но, к сожалению, это не сработало. Однако, спустя некоторое время, я заставил его работать. Вот что сработало для меня:

--settings.py--

MEDIA_ROOT = ''
MEDIA_ROOT = ''
STATIC_ROOT = os.path.join(PROJECT_ROOT, 'static')
STATIC_URL = 'http://localhost:8000/static/'

--urls.py--

urlpatterns = patterns('', (r'^$', 'reviewsite.views.my_homepage_view'),)
urlpatterns += patterns('',
url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_ROOT }), )

Теперь я поместил файл css в статическую папку в каталоге приложений. В шаблоне я использую {{STATIC_URL}} / style.css.

person user1899005    schedule 17.03.2013