ubuntu 关于Django的管理页面保存文件的奇怪行为

bfhwhh0e  于 2023-04-20  发布在  Go
关注(0)|答案(1)|浏览(109)

我有Django 4.1.7网站,由Ubuntu PC上的apache2提供服务。
在apache2的.conf文件中:Alias /static /mnt/hdd/SIMSY/static/和Django按预期工作。
所有的CSS,JS,图像都加载得很好。
但是当使用Django的内置管理站点添加新对象时,站点试图将图像保存在Ubuntu根目录下的/static上(这导致了Permission错误,然后我尝试在根目录下创建该文件夹,它实际上将图像保存在该文件夹中)。
Django是如何在apache2告诉它/static/mnt/hdd/SIMSY/static时试图保存到/static中的?
我假设在www.example.com中可以改变一些东西settings.py来解决这个问题,可以改变什么?
以下是www.example.com中settings.py与静态有关的部分:

BASE_DIR = Path(__file__).resolve().parent.parent

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    BASE_DIR / "static",
]
5lhxktic

5lhxktic1#

上传的文件不是静态文件,而是媒体文件,需要在设置文件中设置MEDIA_ROOT和MEDIA_URL才能正确处理。
这里有一些关于如何在django中处理用户上传的文件的有用链接:

相关问题