我的base.html中列出了几个CSS文件,虽然其中一个已加载,但其他一切都没有,也没有javascript或图像。
以下是base.html的一部分:
<html>
<head>
<link href="/media/css/base.css" rel="stylesheet" type="text/css"/>
<link href="/media/css/home.css" rel="stylesheet" type="text/css"/>
<link href="/media/css/slideshow.css" rel="stylesheet" type="text/css"/>
<link href="/media/css/demos.css" rel="stylesheet" type="text/css"/>
...
media是基本目录中包含静态文件的文件夹。在查看生成的页面源时,base.css
加载正常,但对于其他所有内容,我得到Page not found: [Name of CSS file here]
。据我所知,base.css和home.css之间没有任何区别;文件夹位置,文件权限......我只是想不通为什么它可以找到一个文件,而不是其余的。有没有人有任何想法可能会发生什么?
Settings.py
ROOT_DIR = os.path.abspath("")
ROOT_URL = 'http://url that will be used for running product/'
MEDIA_ROOT = ROOT_DIR + 'media/'
MEDIA_URL = ROOT_URL + 'media/'
urls.py
urlpatterns += patterns('django.views',
url(r'^media/css/(?P<path>.*)$', 'static.serve',
{'document_root': ROOT_DIR + 'media/css/'}, name='css-root'),
(r'^media/images/(?P<path>.*)$', 'static.serve',
{'document_root': ROOT_DIR + 'media/images/'}),
(r'^media/scripts/(?P<path>.*)$', 'static.serve',
{'document_root': ROOT_DIR + 'media/script/'}),
)
答案 0 :(得分:3)
好的,所以我们现在已经到底了。您的MEDIA_URL
设置与ADMIN_MEDIA_PREFIX
设置冲突 - 它们都设置为`/ media',而admin设置优先。
将MEDIA_URL
设置为其他内容 - 例如/site_media
- 事情应该更快乐。
答案 1 :(得分:0)
您的MEDIA_ROOT设置为什么?我很惊讶你不仅仅需要做“/css/base.css”等等。