【发布时间】:2010-05-27 16:26:10
【问题描述】:
在我的 settings.py 中,我有以下内容:
PROJECT_DIR = os.path.dirname(os.path.realpath(__file__))
MEDIA_ROOT = os.path.join(PROJECT_DIR,'templates')
MEDIA_URL = '/templates/'
在 urls.py 我有(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT}),
我的 base.html 有以下指令:
<link media="screen" href="site_media/bat/design/css/bat.css" type="text/css" rel="stylesheet" />
在第一次进入应用程序时(即http://localhost),这个样式表就可以正常加载了。但是,在随后的 http 请求中(在 urls.py 中它是 (r'^assist/bat/', include('assist.bat.urls')),对于另一个模板,此指令会导致以下错误:
样式表 http://localhost/assist/bat/site_media/bat/design/css/bat.css 未加载,因为它的 MIME 类型“text/html”不是“text/css”。
如您所见,这个 css 指令被变形为一个完全不正确的相对 url。如果我从该网址中删除 /assist/bat ,那么它就可以正常工作。那么如何将我的应用设置为不以这种方式修改 url?
谢谢, 伊戈尔
【问题讨论】:
标签: css django django-urls