Django,创建可以大量删除、编辑等的对象列表

Django,创建可以大量删除、编辑等的对象列表,django,django-forms,django-views,Django,Django Forms,Django Views,我似乎找不到关于构建可编辑列表视图的更多信息 例如,我想创建一个用户列表,每个用户都与复选框并列,以便其他用户可以通过并批量删除用户,或者编辑每个用户的某些属性 最好的方法是什么,或者我需要搜索什么术语来找出如何做到这一点?理想情况下,我想要一个基于类的视图解决方案(ListView?),但FBV也可以 提前感谢,您需要的是表单集 如果要删除一组用户,可以: 1) 创建Userform,它有一个额外的布尔字段-delete 2) 更改表单,即在save方法中,如果delete等于True,则删除

我似乎找不到关于构建可编辑列表视图的更多信息

例如,我想创建一个用户列表,每个用户都与复选框并列,以便其他用户可以通过并批量删除用户,或者编辑每个用户的某些属性

最好的方法是什么,或者我需要搜索什么术语来找出如何做到这一点?理想情况下,我想要一个基于类的视图解决方案(ListView?),但FBV也可以


提前感谢,

您需要的是表单集

如果要删除一组用户,可以:

1) 创建Userform,它有一个额外的布尔字段-delete

2) 更改表单,即在save方法中,如果delete等于True,则删除该对象

3) 创建formset,它使用以前创建的表单:

UserFormSet = modelformset_factory(User, form=PreviouslyCreatedUserForm)
4) 如果视图中的表单集清除时没有错误,请调用formset.save()

5) 给用户一些反馈

也许在表单保存方法中这样做是不合适的,在这种情况下,您也可以像这样在视图中循环表单。不过,您必须设置某种参数,以确定表单/对象是否标记为删除

for form in formset:
  if form.delete = True:
    obj = form.save(commit = False)
    obj.delete()

无论如何,表单集是一个非常强大的工具,仔细研究这个主题,我相信它会想出不同的使用方法。

有一个
可以删除
的参数。您不必手动添加布尔字段。是的,没错。没想到:)。多亏了你们两位,我从django extra View中找到了一个很好的解决方案,它支持can_delete。就在我以为django再也吃不到甜点的时候。。