要查看静态文件(图像和pdf),我使用包含目录名称的值定义STATIC_DIRS
,我上传这些文件:
STATICFILES_DIRS = ( '/home/alessandro/Scrivania/progetto/media/photos/custodia/', '/home/alessandro/Scrivania/progetto/media/definitiva/', '/home/alessandro/Scrivania/progetto/media/proforma/', '/home/alessandro/Scrivania/progetto/media/fpdf/'; )
在STATIC_URL中:
STATIC_URL = '/static/'
在已安装的应用中:
INSTALLED_APPS = ( .... 'django.contrib.staticfiles', )
权限为0777。
现在,当我想查看图像或pdf文件时,收到此错误消息。 页面未找到
我正在使用此网址:
HTTP://127.0.1:8000 /家庭/亚历山德罗/ Scrivania / PROGETTO /媒体/照片/ custodia / powered_by.png
任何想法?为什么会出现这个问题?
答案 0 :(得分:5)
默认情况下,Django的内置开发服务器不提供静态和媒体文件。如果您希望它直接提供这些文件,请将staticfiles_urlpatterns
和MEDIA_URL
模式添加到您的urlconf。
from django.conf import settings
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.conf.urls.static import static
# ... the rest of your URLconf goes here ...
urlpatterns += staticfiles_urlpatterns()
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
这仅在DEBUG
为True
时才有效。
有关详细信息,请参阅corresponding docs。
注意:你不应该在制作中这样做!始终在生产模式下为静态文件使用单独的Web服务器。