Были заданы вариации этого вопроса, но я все еще не могу правильно загружать таблицы стилей при рендеринге моих шаблонов.
Я пытаюсь использовать статические носители из процесса Django во время разработки, что, как мне известно, сильно обескураживается в производстве. Я напишу свою конфигурацию и свой шаблон, и, надеюсь, кто-то может помочь мне понять, в чем я ошибаюсь.
Обратите внимание, что я попытался следовать примеру на веб-сайте проекта Django, однако он не упоминает, как ссылаться на ваши таблицы стилей из шаблона. Я также пробовал много разных вариантов одного и того же, поэтому мой код/настройки могут немного отличаться от того, что описано.
settings.py
MEDIA_ROOT = 'D:/Dev Tools/django_projects/dso/media'
MEDIA_URL = '/media/'
ADMIN_MEDIA_PREFIX = '/media/'
urls.py
from django.conf.urls.defaults import *
from django.conf import settings
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
(r'^admin/(.*)', admin.site.root),
(r'^ovramt/$', 'dso.ovramt.views.index'),
)
if settings.DEBUG:
urlpatterns += patterns('',
(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
)
В моем шаблоне:
<head>
<title> {% block title %} DSO Template {% endblock %} </title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
<link rel="stylesheet" type="text/css" href="../media/styles.css">
</head>
Я заверяю вас, что файлы (шаблоны/носители) находятся в правильной директории в моей файловой системе. Если есть дополнительная информация, которую я должен предоставить, отправьте комментарий.
Изменить:
Одной из проблем, с которыми я столкнулся, было использование "/", добавляющего мои ссылки. Если передняя косая черта добавлена, ссылка открывается из корня сайта. Если нет косой черты, ссылка открывается на текущем уровне. Пример:
www.example.com/application/имеет ссылку "/app2/и ссылка" app3/".
app2 откроется по адресу www.example.com/app2/, а приложение 3 откроется по адресу www.example.com/application/app3/. Это меня путало, я думаю.