Django自定义上传目录

简介:

由于数据库的upload_to功能,有时不能满足每次上传灵活自定义的需求,

基于DEF的上传,有时不能满足基于CLASS的视图要求,

于是,只好慢慢用土法实现。

当然,首先,要使用上传功能时,form里的这个东东enctype="multipart/form-data",必须加。

然后,关键实现如下:

复制代码
class UploadView(FormView):
    template_name = 'upload.html'
    form_class = UploadFileForm

    def form_invalid(self, form):
        return self.render_to_response(RequestContext(self.request, {'form': form}))

    def form_valid(self, form):
        file_path = form.cleaned_data['file_path']#这里保存着我们要的东东哟
        deployversion_upload_done(file_path)
        return HttpResponseRedirect(reverse("list"))



def deployversion_upload_done(upload_file):
       
        file_with_path = "这里可以传变量或自定义目录哟" + str(upload_file)
        with open(file_with_path, 'wb+') as destination:
            for chunk in upload_file.chunks():
                destination.write(chunk)
复制代码

 

目录
相关文章
|
7月前
|
前端开发 API 数据格式
Django的restframework接口框架自定义返回数据格式
在前后端分离是大趋势的背景下,前端获取数据都是通过调用后台的接口来获取数据微服务的应用越来越多。Django是Python进行web应用开发常用的web框架,用Django框架进行web应用框架减少了很多工作,通常用很少量的代码就可以实现数据的增、删、改、查的业务应用,同样用Django的restframework的框架对外发布接口也是非常的简单方便,几行代码就可以将数据对象通过接口的方式提供服务。因为在实际开发过程中接口的返回数据有一定的格式,本文介绍通过自定义Response返回对象来自定义接口返回数据格式。
78 1
|
4天前
|
数据处理 数据库 开发者
Django中的自定义管理命令:扩展管理功能的途径
【4月更文挑战第15天】Django教程:介绍如何创建和使用自定义管理命令以扩展框架功能。在应用的`management/commands`目录下创建Python文件,继承`BaseCommand`,实现`handle`方法。示例代码展示了如何定义参数和执行逻辑。自定义命令适用于批量数据处理、定期任务、项目初始化和自定义迁移操作。注意文件位置、命令安全性和稳定性。自定义管理命令能提升开发和维护效率。
|
9月前
|
网络架构 Python
【Django学习】(十四)自定义action_router
【Django学习】(十四)自定义action_router
|
9月前
|
Python
【Django学习】(九)自定义校验器_单字段_多字段校验_模型序列化器类
【Django学习】(九)自定义校验器_单字段_多字段校验_模型序列化器类
|
9月前
|
数据可视化 前端开发 JavaScript
python+Django+Mysql+Echarts数据可视化实战教程(2):Django环境下web目录的配置
python+Django+Mysql+Echarts数据可视化实战教程(2):Django环境下web目录的配置
179 0
|
11月前
|
数据库 Python
django drf 实现只有超级用户才能注册账号(涉及自定义权限permissions,获取token信息解析token信息)
django drf 实现只有超级用户才能注册账号(涉及自定义权限permissions,获取token信息解析token信息)
|
11月前
|
Python
Django框架开发004期 Python编程调用自定义Django框架template模板网页
Django框架开发004期 Python编程调用自定义Django框架template模板网页
|
12月前
|
前端开发 关系型数据库 MySQL
Django 自定义装饰器解决MySQL server has gone away错误
Django 自定义装饰器解决MySQL server has gone away错误
80 0
|
12月前
|
测试技术 Python
Django Template层之自定义tag
Django Template层之自定义tag
48 0
|
12月前
|
测试技术 API Python
Django 通过自定义context_processors实现自定义tag
Django 通过自定义context_processors实现自定义tag
44 0