Я был совершенно сбит с толку в течение хороших 30 минут, но я думаю, что мои проблемы должны быть связаны с изменениями в Django 1.3.
Мой urls.py выглядит так:
if settings.DEBUG:
urlpatterns += patterns('',
(r'^static/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.STATIC_ROOT, 'show_indexes': True}),
(r'^media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
(r'^admin_media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.ADMIN_MEDIA_ROOT}),
)
Если я захожу в / static /, я получаю список файлов. Например, в моем корневом каталоге есть файл «iphone.png». Переходя к /static/iphone.png я получаю сообщение 404.
Если я изменю этот раздел на:
if settings.DEBUG:
urlpatterns += patterns('',
(r'^otherstatic/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.STATIC_ROOT, 'show_indexes': True}),
(r'^media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
(r'^admin_media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.ADMIN_MEDIA_ROOT}),
)
Все, что связано с / otherstatic / работает чудесно.
Я также должен добавить, что с / media / или /admin_media/.
проблем не было
Это связано с новым приложением staticfiles в Django? (Если так, то кто подумал, что было бы хорошей идеей полностью разбить этот очень простой вариант использования?)
Спасибо!