Django Admin 站点实现图片上传完整指南

咖啡半糖
咖啡半糖
发布时间:2026-10-13 | 4人浏览过
原创

本文详细介绍如何在 Django Admin 站点中实现图片上传功能。通过安装 Pillow 库、配置 MEDIA_ROOT 路径、在模型类中定义 ImageField 字段以及执行数据库迁移,即可完成图片存储配置。最终通过 Admin 界面上传的图片将自动保存至指定目录,并在数据库中记录路径。

Django Admin 上传图片配置指南

Django 内置了对文件系统的支持,允许在 Admin 管理站点中便捷地上传和保存图片。要在 Admin 站点中成功保存图片,必须预先安装 Python 的图片处理库。


pip install Pillow

配置上传路径

1 配置环境

默认情况下,Django 会将上传的文件存储在本地服务器中,因此需要明确配置保存路径。我们可以选择将上传的文件保存在静态文件目录中,例如之前设置的 static_files 目录。请在 settings.py 文件中添加以下上传保存目录的配置信息。


MEDIA_ROOT=os.path.join(BASE_DIR,"static_files/media")

模型字段定义与迁移

2 为模型类添加 ImageField 字段

接下来,我们需要为之前的 BookInfo 模型类添加一个 ImageField 字段。


class BookInfo(models.Model):
 ...
 image = models.ImageField(upload_to='booktest', verbose_name='图片', null=True)

upload_to 选项用于指定图片保存在 MEDIA_ROOT 目录下的具体子目录。配置完成后,需执行数据库迁移操作以应用更改。


python manage.py makemigrations
python manage.py migrate

Admin 上传操作验证

3 使用 Admin 站点上传图片

进入 Admin 站点的图书管理页面,选择一本图书,你会发现新增了一个上传图片的字段。选择一个图片文件并保存后,该图片将被保存在 static_files/media/booktest/ 目录下。

此时,在数据库中查看,可以看到 image 字段已被设置为图片的存储路径。

以上即为 Django 使用 Admin 站点上传图片的完整实例,希望能为读者提供参考与支持。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表