我读过 this guide关于在开发过程中使用 Django 提供静态媒体。
我注意到这里没有使用 MEDIA_URL
和 MEDIA_ROOT
。为什么?有什么区别?
我尝试用 MEDIA_URL
和 MEDIA_ROOT
来做,结果很奇怪。
最佳答案
在生产情况下,您会希望从前端 Web 服务器(Apache、Nginx 等)提供媒体,以避免 Django/Python 进程的额外负载。 MEDIA_URL 和 MEDIA_ROOT 通常用于此目的。
运行内置的开发服务器,您需要在 url.py 文件中设置正确的 url - 我通常使用如下内容:
from django.conf import settings
urlpatterns += patterns('',
(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
)
这会从您的设置文件中获取 MEDIA_ROOT,这意味着它适用于开发和直播。
关于python - 在 Django 开发期间提供静态媒体 : Why not MEDIA_ROOT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2237418/