久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

Django 解決上傳文件時,request.FILES為空的問題

瀏覽:4日期:2024-10-02 08:23:30

用html的form上傳文件時,request.FILES為空,沒有收到上傳來的文件,但是在request.POST里找到了上傳的文件名(只是一個字符串)。

解決方法:

為form表單規(guī)定enctype屬性,其值為'multipart/form-data'。

enctype 屬性規(guī)定在發(fā)送到服務(wù)器之前應(yīng)該如何對表單數(shù)據(jù)進(jìn)行編碼。

值 描述 application/x-www-form-urlencoded 在發(fā)送前編碼所有字符(默認(rèn)) multipart/form-data 不對字符編碼。在使用包含文件上傳控件的表單時,必須使用該值。 text/plain 空格轉(zhuǎn)換為 “+” 加號,但不對特殊字符編碼。

<form action='xxx' method='xxx' enctype='multipart/form-data'>

這樣在request.FILES就能找到上傳的文件啦 U*_*U

補(bǔ)充知識:解決Django文件上傳views報錯NoneType,其他能收到

Django通過form表單給后臺提交一個文件的時候,報錯

’NoneType’ object has no attribute ’name’

前端:

<form accept-charset='UTF-8' action='跳轉(zhuǎn)鏈接' method='post'> <div> <input type='file' name='t_photo' accept='image/*'> </div></form>

后端收不到這個文件,但其他的字符串?dāng)?shù)據(jù)能正常收到。

解決:

1.首先看一下,上傳文件的form表單必須加上enctype='multipart/form-data',因為默認(rèn)情況下,編碼enctype的值是application/x-www-form-urlencoded,不能用于文件上傳,只有使用了multipart/form-data,才能完整的傳遞文件數(shù)據(jù)。

<form accept-charset='UTF-8' action='跳轉(zhuǎn)鏈接' method='post' enctype='multipart/form-data'> <div> <input type='file' name='t_photo' accept='image/*'> </div></form>

2.再檢查一下,Django的view中接受文件不是在POST里,而是在FILE里。

request.POST.get(’t_photo’) # 不是在POST里request.FILES.get(’t_photo’, None)

以上這篇Django 解決上傳文件時,request.FILES為空的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Django
主站蜘蛛池模板: 欧美精品一区二区在线观看 | 天堂欧美城网站 | 久久成人一区 | 在线国产专区 | 中文字幕一区在线观看视频 | 成人av免费在线 | 国产精品国产精品国产专区不片 | 久久99国产精一区二区三区 | 日本精品一区 | 一区二区三区在线看 | 日韩一二三区 | 欧洲成人午夜免费大片 | 日韩快播电影 | 精品日韩欧美一区二区三区在线播放 | 欧美视频在线免费 | 国产成人精品在线 | 五月天婷婷色综合 | 国产精品久久久爽爽爽麻豆色哟哟 | 国产欧美一区二区视频 | 成人性视频在线 | 看毛片的网站 | 欧美视频一级片 | 日韩激情二区 | 波多野结衣一区二区三区四区 | 欧美日韩在线视频一区二区 | 中文字幕亚洲一区二区三区 | 成人免费毛片aaaaaa片 | 蜜桃一区| 三级黄色片在线播放 | 久久爱www. | 91社区在线播放 | 精品久久久久久久人人人人传媒 | 亚洲国产成人精品女人 | 高清久久| 天天操天天曰 | 亚洲精品日韩综合观看成人91 | 精品免费一区二区 | 五月在线视频 | 日本aa级毛片免费观看 | 二区在线观看 | 91社影院在线观看 |