【发布时间】:2023-03-27 18:22:01
【问题描述】:
我想删除
results = Model.objects.filter(condition - satisfied... etc.)
然后我遍历查询集并在我浏览我的代码时删除每个对象:
for a in results:
### code ###
results.exclude(id=a.id)
无论我如何排除,结果对象都不会改变。有没有办法在我遍历查询集时“弹出”它们?
【问题讨论】:
-
你需要这个作为查询集吗?
-
@Gocht。我知道可以从查询集中提取对象并使用 .remove 将它们从列表中取出。我正在寻找是否有办法“就地”做到这一点。
-
查询集不会就地更新。您需要将查询集结果重新捕获到局部变量中。
-
@karthikr。你是怎样做的?我认为把它放在结果中已经使它成为一个局部变量。
标签: django django-models django-queryset