当前位置: 首页 > 网络应用技术

Django如何实现上传文件(2023年的最新答案)

时间:2023-03-07 22:22:51 网络应用技术

  简介:许多朋友询问了Django如何实现上传文件。本文的首席CTO笔记开始为您的参考做出详细的答案。我希望这对每个人都会有所帮助!让我们一起看看!

  给您一个代码:

  首先,您需要使用以下装饰器将Post Data的解析器更改为MultipartParser。其中,Piction的文件字段是fiefield或其子类。

  @api_view(['post'])

  @parser_classes(((倍部分,)))

  def upload_picture(请求):

  如果在request.files中“文件”:

  f = request.files [“文件”]

  图片=图片()

  picture.file = f

  picture.save()

  返回响应(data = {“ id”:picture.id})

  worlds = requests.post(path,data = {'document_name':document_path,'file':base64.b64encode(file.read())})此方法实际上是将base64的文件信息和文件发送到服务器。侧面,有以下方法沉积在服务器中

  如何将文件存储在当地

  Django通过文件上传,上传单个文件,然后直接使用DRF。

  PS。在这里,我需要两个字段:名称和ID。如果您不需要,可以将其删除

  PS。忽略basemodel,但它只是被封装了一个必须的字段

  自定义文件上传名称:

  这个问题不是文件上传的问题,而是一个非常简单的文件代码。

  这在python中很困惑。法定错误。您必须了解django默认为unicode。如果您使用str类型。它将自动转换您。这是python的自动转换。GBK,有时会出错。

  您的环境正是Windows。英语('utf-8')英语没有问题。

  我建议您在文件前面添加一个编码:UTF-8

  然后将此句子更改为

  断言(type(file_name)== unicode)

  fpath = u'd:/ texthub/texthub/site_media/upload/'+file_name.encode('gb18030')

  自己尝试。

  后端的责任。

  前端上传文件的工作原理和上传速度的工作原理是后端的责任。需要加载到Django中的上传文件的功能。上传时,将文件分为几个MB块处理,这次将被称为此时间。pload函数。和文件大小

  最终用JavaScript将其渲染在页面上。

  前端只能说与框架和插件-in.baidu的webuploader一起使用,演示带来了进度栏。前端和通信协议确实是写了后端。上传转移时间的时间是错误的,这是传统流和弹簧随附的,应该写的时间。

  项目框架将采用Spring+Hibernate+SpringMVC,如果您不想使用Flash,则可以使用HTML5;屏幕截图前面的模块是BootStarp框架。代码是直接配置的;Spring-MVC配置文件。

  nginx单词可以获取链接的链接,您可以知道它上传了多少。您可以查看OpenReast的Lualib/resty/upload.lua。

  自动化接口时,有时会遇到图片上传的接口。目前,内容类型不是应用程序/JSON。

  这是DRF编写图片上传界面和测试。

  1.写图片上传界面

  首先创建一个文件夹我们要存储文件,并在settings.py中配置路径:

  在项目的urls.py中配置媒体路线:

  在应用程序的models.py中创建模型:

  并在serializer.py中创建序列化:

  写视图。

  urls.py配置路由到应用程序:

  最后,让我们测试:

  结论:以上是首席CTO注释为每个人编写的Django的全部内容。