1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Djangoでファイルアップロード

Last updated at Posted at 2018-06-21

Djangoでアプリケーションを作ってた時困った話。
Formを使ってファイルをアップロードしたいのにできなった。

修正前

views.py
def InfoView(request):
    form= Form(request.POST or None)
    if form.is_valid():
        form.save()
        return redirect("/complete")
    return render(request, 'form.html', {'form': form} )

ファイルを選択してアップロードしてもファイルだけがアップロードされない。(他のテキストなどはDBに保存される)
しらべたらFormの引数に
request.FILES
が必要だったらしい。

修正後

views.py
def InfoView(request):
    form= Form(request.POST or None, request.FILES)
    if form.is_valid():
        form.save()
        return redirect("/complete")
    return render(request, 'form.html', {'form': form} )

ファイルも一緒に保存されるようになった。

1
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?