如何在 Django 中提供用户上传的文件?

2024-01-28

我正在编写一个 Django 应用程序,用户可以在其中上传图像,但我不知道如何为它们提供服务。我可以看到两种方法:

1-将它们作为静态文件上传:将它们上传到static文件夹在我的项目目录中,然后运行python manage.py collectstatic,但我不知道如何在每次上传文件时自动运行此命令,这似乎需要大量处理,因为每次服务器都会删除并重新加载我的静态应用程序中的所有内容。

2- use django.views.static.serve在我的 urls.py 中:

url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
        'document_root': settings.MEDIA_ROOT,
    }),

but the doc https://docs.djangoproject.com/en/dev/howto/static-files/#django.views.static.serve不推荐将其用于生产。

提供用户上传文件的推荐方式是什么?


您上传的文件进入MEDIA_ROOT并可以使用MEDIA_ROOT。您需要在settings.py中设置这些参数。

您的开发可以通过 django 开发服务器为它们提供服务,但您可以将其配置为从 apache 或其他服务器提供服务。

Refer Django 管理存储的文件 https://docs.djangoproject.com/en/dev/topics/files/#using-files-in-models

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Django 中提供用户上传的文件? 的相关文章

随机推荐