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 回答