0

フォームセットを使用しており、ユーザーが複数の画像をアップロードできるようにしています。機能した。しかし、問題は、ユーザーがアップロードする写真を選択していない場合、次のコードが保存されていることsubmitterです。ユーザーが画像をアップロードしていない場合は、保存したくありませんsubmitter。これは可能ですか?

if form.is_valid() and formset.is_valid():
    for image_form in formset:
        pics = image_form.save(commit=False)
        pics_image.submitter = request.user
        pics_image.save()
4

1 に答える 1

1

formset.save()フォームを単に反復して保存するよりも多くの処理を行います。

したがって、form.has_changed()手動で確認する必要があります。

formset.save(commit=False)または、保存するリターンインスタンスに依存します

if form.is_valid() and formset.is_valid():
    for img in formset.save(commit=False):
        img.submitter = request.user
        img.save()
    # formset.save_m2m() # if there is any m2m to save
于 2012-05-06T06:21:29.460 に答える