Django中实现点击图片链接强制直接下载的方法

yipeiwu_com6年前Python基础

本文实例讲述了Django中实现点击图片链接强制直接下载的方法。分享给大家供大家参考。具体分析如下:

当用户点击图片连接时,默认为在浏览器中直接开打图片,这段代码可以让图片链接变成下载

这段代码也非常适合下载大文件,基本不会消耗内存,每次只读取一部分数据到内存,然后提供下载

def Download(request):
  def readFile(fn, buf_size=262144):
    f = open(fn, "rb")
    while True:
      c = f.read(buf_size)
      if c:
        yield c
      else:
        break
    f.close()
  filename = '/usr/local/1.jpg'
  try:
    response = HttpResponse(readFile(file),mimetype='application/octet-stream')
    response['Content-Disposition'] = 'attachment; filename=%s' %'附件'
  except:
    response = HttpResponse('')
  return response

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python如何以表格形式打印输出的方法示例

python如何以表格形式打印输出的方法示例

好久不见,风水轮流转,我竟然写写写python了 近日有个小需求,要求收集统计一些信息上报,并直接在后台控制台打印,写入日志 为了美观,需要以表格形式展现数据,形如 虽说可以用 pre...

利用Python中unittest实现简单的单元测试实例详解

前言 单元测试的重要性就不多说了,可恶的是Python中有太多的单元测试框架和工具,什么unittest, testtools, subunit, coverage, testrepos...

python Django 创建应用过程图示详解

python Django 创建应用过程图示详解

如图输入如下命令 python manage.py startapp apitest 添加应用到 autotest项目项目下 在settings.pyo 中加入“apitest”...

Python PyQt5实现的简易计算器功能示例

Python PyQt5实现的简易计算器功能示例

本文实例讲述了Python PyQt5实现的简易计算器功能。分享给大家供大家参考,具体如下: 这里剩下计算函数(self.calculator)未实现,有兴趣的朋友可以实现它 【知识点】...

Pandas 同元素多列去重的实例

有一些问题可能会遇到同元素多列去重问题,下面介绍一种非常简单效率也很快的做法,用pandas来实现。 首先我们看一下数据类型: G1 G2 a b b a c d d c e f...