1. 程式人生 > 其它 >Django專案 檔案的上傳操作

Django專案 檔案的上傳操作

在原有的test.html中添加了上傳檔案的功能:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
{% load mysimple %}
{% old_dog "1" "張" "測試" "用例" %}

{% show_results 10 %}

<form action="/upload/" method="post" enctype="multipart/form-data"> #上傳檔案必須寫enctype

<input type="file" name="upload_file">
<input type="submit" value="上傳檔案">
</form>
</body>
</html>

在urls.py檔案中寫路徑和函式的對應關係
urlpatterns = [
  path('upload/', views.upload),
]
在views.py檔案中寫 upload函式
def upload(request):
if request.method == "POST":
# 從請求的FILES中獲取上傳檔案的檔名
filename = request.FILES["upload_file"].name
# 在專案目錄下新建一個檔案 二進位制檔案
with open(filename, "wb") as f:
# 從上傳的檔案物件中一點點讀
for i in request.FILES["upload_file"].chunks():
# 寫入本地檔案
f.write(i)
return HttpResponse("上傳成功")