【发布时间】:2014-06-12 19:16:35
【问题描述】:
我遇到了一个奇怪的问题,希望其他人也遇到过同样的问题。我的问题是,django 应用程序中的存储媒体无法通过 MEDIA_ROOT URL 提供服务。当我尝试使用 URL myhost/media/ 获取保存在我的应用程序中的媒体文件列表,它显示所有媒体文件。但是当我尝试使用 URL myhost/media/image.jpg 查看它们时,出现错误未找到请求的页面。
错误跟踪:
Using the URLconf defined in myapp.urls, Django tried these URL patterns, in this order:
1.^media\/(?P<path>.*)$
The current URL, ~myapp/media/image.jpg, didn't match any of these.
我的应用设置.py
MEDIA_ROOT = '/home/itsme/myapp/media/'
MEDIA_URL = '/media/'
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
'django.template.loaders.eggs.Loader',
)
网址.py
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = patterns('',
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
谁能建议我解决这个问题。
谢谢。
【问题讨论】:
-
也许,试试这个:
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')如果你使用的是 Django > 1.5 -
这是否意味着问题已解决?
-
@skzryzg 不,问题没有解决。
-
你能发布你的整个 urls.py 吗?
-
@Ramakrishna,“未持续存在”表示问题不再存在。
标签: python django django-media