2

フィールド、、、およびを使用してModelFormを作成しtitleましfilecontent。これがFileField file()です。save()しかし、何らかの理由でこのフォームのメソッドを呼び出すことができません。したがって、1つのモデルオブジェクトを手動で作成し、そのオブジェクトにクリーンな値を割り当てる必要があります。そのFileFieldを除いてすべてが機能しました。ファイルが保存されていません。どうすればこれを修正できますか?FileFieldを抽出するのは正しい方法ですか?

class TestForm(forms.ModelForm):
    class Meta:
        model = Test
        fields = ('title','file', 'content',)

Views.py

 form = TestForm(request.POST,request.FILES)
 if form.is_valid():
     content = form.cleaned_data['content']
     file = form.cleaned_data['file']
     title = form.cleaned_data['title']
     fax = Fax()
     fax.title = title
     fax.file = file
     fax.content = content
     fax.save()

ここでは、ファイルは保存されていません。どうすればこれを修正できますか?どんな助けでもありがたいです!

4

3 に答える 3

6

enctype="multipart/form-data"あなたのフォームで使用したことがありますか コードは問題ないようです。

于 2012-09-03T09:08:12.810 に答える
2

このタイプの検証を使用してください。これはうまくいくかもしれません

if request.method == 'POST':
    form = ModelFormWithFileField(request.POST, request.FILES)
    if form.is_valid():
        # file is saved
        form.save()
        return HttpResponseRedirect('/success/url/')``
于 2012-10-09T06:39:11.297 に答える
0

使えると思います

request.FILES['file']

ファイルオブジェクトを取得するため

于 2012-08-28T12:12:40.237 に答える