Django怎么实现文件下载功能

avatar
作者
猴君
阅读量:0

要实现文件下载功能,可以通过以下步骤在Django中实现:

  1. 在views.py文件中创建一个视图函数,用于处理文件下载请求。
from django.http import FileResponse import os  def download_file(request, file_path):     file_path = os.path.join(settings.MEDIA_ROOT, file_path)     if os.path.exists(file_path):         with open(file_path, 'rb') as f:             response = FileResponse(f)             response['Content-Disposition'] = 'attachment; filename="%s"' % os.path.basename(file_path)             return response     else:         # 文件不存在的处理逻辑         return HttpResponse("File not found", status=404) 
  1. 在urls.py文件中配置该视图函数的URL路由。
from django.urls import path from . import views  urlpatterns = [     path('download/<str:file_path>/', views.download_file, name='download_file'), ] 
  1. 在模板文件中添加下载链接,调用该视图函数。
<a href="{% url 'download_file' file_path %}">Download File</a> 

这样,用户访问该链接时就会触发文件下载功能,浏览器会弹出文件下载对话框,用户可以选择保存文件或直接打开文件。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!