如何删除django额外视图中的行?

如何删除django额外视图中的行?,django,django-forms,django-views,Django,Django Forms,Django Views,在ModelFormSetView中,如何删除行 这是我的代码,我如何在Django额外视图中管理删除行 我正在尝试使用ModelFormSetView if formset.deleted_forms: for obj in formset.deleted_forms: obj.delete() Html {{ formset.management_form }} {% for object in formset %} {% for hidden in formse

在ModelFormSetView中,如何删除行

这是我的代码,我如何在Django额外视图中管理删除行

我正在尝试使用ModelFormSetView

if formset.deleted_forms:
    for obj in formset.deleted_forms:
        obj.delete()

Html

{{ formset.management_form }}
{% for object in formset %}
{% for hidden in formset.hidden_fields %}
   {{ hidden }}
   {% endfor %}
<tr class="formset"  class="even pointer">{{ object.id }}
   <td class=" ">{{ object.as_p }}</td>                         
   <td class=""></td>
</tr>
    {% endfor %}

我还没有对此进行测试,但根据文档,可以在类级别设置与表单集相关的属性。因此,在您的情况下,添加
factory\u kwargs
,并将
can\u delete
指定为True,例如:

class MeasurementPropsUpdateView(ModelFormSetView):
    factory_kwargs = { 'can_order': False, 'can_delete': True}

formset.deleted\u表单只有在调用formset.save(commit=False)后才可用


如果
formset.deleted\u表单:
class MeasurementPropsUpdateView(ModelFormSetView):
    factory_kwargs = { 'can_order': False, 'can_delete': True}
def formset_valid(self, formset):
    if formset.is_valid():
        instances = formset.save(commit=False)

        # Delete objects
        for obj in formset.deleted_forms:
            obj.delete() 

        for obj in instances:
            obj.ProductName_id = self.kwargs.get('pk')
            obj = user = self.request.user
            obj.save()
        messages.success(self.request, "Measurement Properties Updated successfully")
        return HttpResponseRedirect(self.get_success_url())

    #Formset is not valid 
    return False