是否有可能在 django 中有一个媒体 url 和一个 satic url

Is it possible to have a media url and a satic url in django

这是我的主要 urls.py 文件

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('base.urls'))
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

我可以为静态文件使用 url 模式,为媒体文件使用 url 模式吗?谢谢

是的 这实际上很常见,您只需添加 static 两次:一次用于媒体,一次用于静态文件:

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('base.urls'))
]
urlpatterns += static(settings.<b>MEDIA_URL</b>, document_root=settings.<b>MEDIA_ROOT</b>)
urlpatterns += static(settings.<b>STATIC_URL</b>, document_root=settings.<b>STATIC_ROOT</b>)

Django 然而 在生产中提供静态文件或媒体文件:如果您将 DEBUG setting [Djang-doc] 设置为 False,那么这些视图将不再服务数据。您需要配置网络服务器(如 apache、nginx 等)来提供文件。