2013-04-05 45 views
1

在我settings.py为什么Django不能提供我的媒体文件?

ROOT_PATH = os.path.dirname(__file__) 
#STATICFILES_DIRS = 
STATIC_ROOT = os.path.join(ROOT_PATH, 'static') 
MEDIA_ROOT = os.path.join(ROOT_PATH, 'media') 
STATIC_URL = '/static/' 
MEDIA_URL = '/media/ 
在我的模板

 <div class=" event_image"> 
     <img src="{{ MEDIA_URL }}{{ restaurant.logo }}" /> 
    </div> 

在发展这多年平均值的工作,它返回一个404 "GET /media/restaurant_detail/restaurant_detail/information_about_object.jpg HTTP/1.1" 404 178672

我在做什么错,什么是正确的方式去解决它,所以它在工作和生产都有效。我看了这里(Django 1.4 serving MEDIA_URL and STATIC_URL files on development server),但都是徒劳的。

+0

你有'python manage.py collectstatic'吗?尝试手动在文件系统中查找此文件。 – nk9 2013-04-05 11:03:31

+1

您是否为媒体和静态设置了主要的urls.py? – catherine 2013-04-05 11:05:18

+0

是的,我做到了,但我想通了这个问题,不断地环顾四周,现在只是修复了它..我'编辑'的问题.. – 2013-04-05 11:06:20

回答

4

原来我必须包括的网址,我的网址

urlpatterns += patterns('', 
    url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_ROOT}), 
    url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}), 

) 

以上工作..

my project structure 
-myproject 
-- media 
-- static 
-- templates 
-- settings.py 
-- manage.py 
-- app 
0

Suziemac,它的工作对我来说太。以下是原始文档的链接:https://docs.djangoproject.com/en/1.10/ref/views/。 当我开发一个应用程序时,我使用了+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT),但是,当我部署一个应用程序时,这不起作用。

相关问题