在我的settings.py中,我有:
import os
SITE_ROOT = os.path.realpath(os.path.dirname(__file__))
# ... #
STATIC_ROOT = os.path.join(SITE_ROOT, 'static')
# ... #
STATIC_URL = '/static/'
在我的urls.py中,我有:
urlpatterns = patterns('',
url(r'^', include('myapp.urls')),
url(r'^admin/', include(admin.site.urls)),
)
if settings.DEBUG:
urlpatterns += patterns('',
url(r'^static/(?P<path>.*)', 'django.views.static.serve', {
'document_root': settings.STATIC_ROOT,
}),
)
在我的模板中:
<img src="{{ STATIC_URL }}images/myimage.png">
这不管用。奇怪的是,如果我更改了settings.py:
STATIC_URL = 'static/'
和我的模板来:
<img src="/{{ STATIC_URL }}images/myimage.png">
起作用了!!我一直在绕圈子解决这个问题,我看了很多论坛的帖子,但我似乎找不出我做错了什么。
发布于 2011-08-18 09:52:02
如果你使用的是staticfiles app,你不需要这个(假设你使用的是Django 1.3):
if settings.DEBUG:
urlpatterns += patterns('',
url(r'^static/(?P<path>.*)', 'django.views.static.serve', {
'document_root': settings.STATIC_ROOT,
})
它由应用程序自动处理。尝试删除并查看会发生什么情况。
https://stackoverflow.com/questions/7100712
复制相似问题