找不到Django Page(404)

时间:2013-02-20 15:40:53

标签: django

我正在设计一个照片应用。

每次我在管理页面上查看上传的图片时都会收到此错误。

 Page not found (404)
 Request Method:    GET
 Request URL:   http://127.0.0.1:8000/media/images/California_Poppy.jpg

 Using the URLconf defined in mysite.urls, Django tried these URL patterns, in this order:

     ^polls/
     ^admin/
     ^cool/
     ^forum/
     ^register/

 The current URL, media/images/California_Poppy.jpg, didn't match any of these.

我目前的设置是:

 MEDIA_ROOT = 'C:/djcode/mysite/photo'


 MEDIA_URL = 'http://127.0.0.1:8000/media/'

我认为问题在于这些设置。我正在使用windows btw

1 个答案:

答案 0 :(得分:2)

Django docs有一个解决方案供您在开发中提供媒体服务。通常在生产中,您可以直接从Web服务器为您的媒体目录添加别名,以提高效率。为了在开发中服务,文档显示了两种不同的解决方案。您可以查看提供的链接以阅读文档,并找出哪一个更适合您。

from django.conf import settings

# ... the rest of your URLconf goes here ...

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

OR

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = patterns('',
    # ... the rest of your URLconf goes here ...
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)