ссылки на CSS-файлы с помощью Django - PullRequest
0 голосов
/ 12 декабря 2010

Я новичок в фреймворке Django, и у меня возникли небольшие проблемы с соблюдением документации по включению CSS-файлов.

Я установил медиа-корень в settings.py MEDIA_ROOT = '/ home / daniel / django / site1 / media /'

MEDIA_URL = '/ static /'

И у меня есть папка и файл css

/ дом / Даниель / Джанго / site1 / СМИ / CSS / style.css

Теперь в моих html-файлах, как мне ссылаться на CSS-файл?

Поскольку я занимаюсь локальной разработкой, я сделал то, что отправили Django Docs, и сохранил MEDIA_URL как '/static/'.

Чтобы потом ссылаться на файлы, я это сделал, но безрезультатно.

Может ли кто-нибудь, пожалуйста, указать мне в правильном направлении.

Спасибо

Dan

Ответы [ 2 ]

1 голос
/ 12 декабря 2010

вы должны иметь возможность включить свой css следующим образом:

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

Кроме того, если вы используете сервер django dev, вы должны включить статическое обслуживание файлов.Попробуйте добавить следующее в свой urls.py:

from django.conf import settings

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

Обратите внимание, что для производственного использования вы должны отключить статическое обслуживание файлов в django и настроить свой веб-сервер на прием статического содержимого.

0 голосов
/ 12 декабря 2010

Добавить к urls.py:

from django.db import settings
# Media (development)
# Serves media content. WARNING!! Only for development uses.
# On production use lighthttpd for media content.
# Set DEBUG to False in production.
if settings.DEBUG:
    # Delete the first trailing slash, if any.
    if settings.MEDIA_URL.startswith('/'):
        media_url = settings.MEDIA_URL[1:]
    else:
        media_url = settings.MEDIA_URL

    # Add the last trailing slash, if have not.
    if not media_url.endswith('/'):
        media_url = media_url + '/'

    urlpatterns += patterns('',
        (r'^' + media_url + '(?P<path>.*)$', 'django.views.static.serve',
            {'document_root': settings.MEDIA_ROOT}
        ),
    )

А потом в вашем шаблоне:

<link rel="stylesheet" href="{{ MEDIA_URL }}css/style.css" /> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...