django-admin实现文件上传下载

参考:

https://www.cnblogs.com/zerotest/p/14387266.html

https://blog.csdn.net/iteye_10850/article/details/82615387

在网站中对用户开放上传下载功能是很常见的需求。

最近领导提出,我们的api注册中心,需要支持用户使用python脚本对结果进行格式转换

于是我们添加了文件的上传下载功能

一、模型models

在模型中指定保存文件的字段

#底层mysql还是一个varchar类型,存的是文件在项目中的相对路径
result_filter = models.FileField(upload_to='{app_name}/', blank=True, null=True,max_length=100,verbose_name='结果转换脚本')

二、settings文件中指定文件目录

settings加入

MEDIA_URL = 'file/'
MEDIA_ROOT = 'file/'

 

MEDIA_ROOT = 'file/'

于是上传文件的路径就是MEDIA_ROOT = 'file/'与upload_to='appname/'连起来file/appname/

上传a.txt,目录为file/appname/a.txt。

MEDIA_URL = 'file/'

表示任何上传文件链接前缀为 'file/'与upload_to='appname/'连起来file/appname/

三、urls.py中配置上传下载的接口

这个是全局的urls.py

复制代码
from django.conf import settings
from django.contrib import admin
from django.urls import path, include, re_path
from django.views.static import serve

urlpatterns = [
#...
    re_path(r"file/(?P<path>.*)$", serve, {"document_root": settings.MEDIA_ROOT}),
    
]
复制代码

这样就大功告成了

posted @   Mars.wang  阅读(895)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
历史上的今天:
2019-12-13 python之json读写
点击右上角即可分享
微信分享提示