从 MEDIA_ROOT 下载无效

Download from MEDIA_ROOT does not work

我正在尝试制作一个 User 上传文件(以某种语言),另一个 User 下载文件以便他们翻译。

我设置了媒体根目录和媒体 url:

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'

当有人通过 form 上传文件时,该文件出现在 project/media/file 中。但问题是,如果我尝试单击该文件或键入 url /project/media/file.extension 它会引发

Page not found (404)
Request Method: GET
Request URL:    http://127.0.0.1:8000/media/File_-_Psychos_lZB1D1N.mp3
Using the URLconf defined in SolutionsForLanguages_2.urls, Django tried these URL patterns, in this order:

http://127.0.0.1:8000/media/File_-_Psychos_lZB1D1N.mp3

如何让它发挥作用?

我猜你在开发服务器上?将此添加到 urls.py 配置文件以告诉 Django 的开发服务器也提供 static/media/ 文件。

if settings.DEBUG:
    from django.contrib.staticfiles.urls import staticfiles_urlpatterns
    from django.conf.urls.static import static

    urlpatterns += staticfiles_urlpatterns()
    urlpatterns += static(
        settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)