FileField を持つモデルと、FileField を持つフォームもあります。フォームはモデルに基づく ModelForm ではありませんが、通常のフォームです。
アップロードしたファイルをフォームからモデルに保存するにはどうすればよいですか?
モデルが
class Thing(models.Model):
document = models.FileField(upload_to='documents')
あなたは簡単に行うことができます
thing = Thing()
thing.document = request.FILES['Filedata']
thing.save()
OK、これは私が探していたものです:
from django.core.files.base import ContentFile
def save_file(request):
mymodel = MyModel.objects.get(id=1)
file_content = ContentFile(request.FILES['video'].read())
mymodel.video.save(request.FILES['video'].name, file_content)
ここで良い説明が見つかりました。