首先,在html模版中新增類似下面的**
這裡需要注意一下幾點:form表單彙總一定要有enctype="multipart/form-data"
屬性 form需要以post方式提交
form的action屬性對應views中處理upload上傳邏輯的函式
需要有csrf_token這個標籤,否則post無法提交
第乙個的型別為file,這是乙個檔案選擇器,name屬性很重要,因為後面通過此欄位取出檔案物件
接下來,編寫cgi邏輯
def process_upload_file(request):取用檔案的方式為:「file_obj = request.files.get('file', none)」。第乙個引數」your_file# 獲取檔案
# 寫入檔案
file_name = 'temp_file-%d' % random.randint(0,100000) # 不能使用檔名稱,因為存在中文,會引起內部錯誤
file_full_path = os.path.join(upload_root, file_name)
dest = open(file_full_path,'wb+')
dest.write(file_obj.read())
dest.close()
return render_to_response('upload_result.html',{})
」對應form中的第乙個input標籤。然後,可以通過file_obj.name獲取檔名稱,file_obj.read()方法獲取檔案內容。上傳的檔案放在記憶體中,所以此方法只適合小檔案上傳。
Django檔案上傳 適用於單一小檔案上傳
首先,在html模版中新增類似下面的 inputtype submit value 上傳檔案 這裡需要注意一下幾點 form表單彙總一定要有enctype multipart form data 屬性form需要以post方式提交 form的action屬性對應views中處理upload上傳邏輯的...
寫一段適用於微控制器和上位機的蜂鳴器處理程式
define beep nor define beep on define beep off typedef struct beep beep struct n 響的次數,btime 響的時間,gtime 不響的時間 void beep beep struct beep,uint8 n,uint8 ...
php函式偽靜態 MVC單一入口與檔案上傳安全漏洞
php中有乙個讓人不解的特性,那就是,如果檔名中有 php 則會自動呼叫php引擎,當成php指令碼處理。php的函式偽靜態也是這樣做出來的。以下是函式偽靜態所用的函式 function makeurl arr tmpurl implode url return tmpurl.htm functio...