Djangoはファイルをアップロードする時、request.FILESは空の問題です。


ファイルをアップロードする時、request.FILESは空です。アップロードされたファイルは届きませんでしたが、request.POSTでアップロードされたファイル名が見つかりました。
解決方法:
フォームのためにenctype属性を規定し、その値は「multiipad/form-data」です。
enctype属性は、サーバに送信する前にフォームデータをどのように符号化するべきかを規定しています。

説明
アプリ/x-www-form-urlencoded
送信前にすべての文字をエンコード(標準)
multiipad/form-data
文字コードではありません。ファイルアップロードコントロールを含むフォームを使用するには、この値が必要です。
text/plin
スペースを「+」に変換しますが、特殊文字コードはありません。
<form action=「xxx」method=「xxx」enctype=「multiipad/form-data」
このようにrequest.FILESでアップロードされたファイルやU*。U
補足知識:DjangoファイルのアップロードviewsエラーNoneTypeを解決し、その他は受け取ることができます。
Djangoはフォームを通してバックグラウンドにファイルを提出する時、エラーを報告します。
'NoneType'object hasのatribute'name'
フロントエンド:

<form accept-charset="UTF-8" action="    " method="post">
  <div>
    <input type="file" name="t_photo" accept="image/*">
  </div>
</form>
バックエンドはこのファイルを受信できませんが、他の文字列データは正常に受信できます。
解決:
1.まず見てください。アップロードされたファイルのフォームはenctype=「multiipad/form-data」を追加しなければなりません。デフォルトでは、エンカウントの値はaplication/x-wn-form-urlencodedです。ファイルアップロードには使えません。multiad/form-dataを使ってこそ、ファイルのデータを完全に伝達することができます。

<form accept-charset="UTF-8" action="    " 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が空いている問題は小編集が皆さんに共有した内容の全部です。参考にしてもらいたいです。どうぞよろしくお願いします。