Revert "clean up List db queries"

This reverts commit 41f27a4a66.

I forgot that update() can only be done on a query result, not on an object, so we will need to go back to querying in order to update rather than saving.
This commit is contained in:
Hugh Rundle 2021-10-16 06:59:07 +11:00
parent 1634c8774e
commit 2f38af4faa
2 changed files with 8 additions and 3 deletions

View file

@ -101,10 +101,15 @@ class List(OrderedCollectionMixin, BookWyrmModel):
def remove_from_group(cls, owner, user):
"""remove a list from a group"""
cls.objects.filter(group__user=owner, user=user).all().update(
memberships = GroupMember.objects.filter(group__user=owner, user=user).all()
for membership in memberships:
# remove this user's group-curated lists from the group
cls.objects.filter(group=membership.group, user=membership.user).update(
group=None, curation="closed"
)
class ListItem(CollectionItemMixin, BookWyrmModel):
"""ok"""

View file

@ -58,7 +58,7 @@ class Lists(View):
book_list = form.save()
# list should not have a group if it is not group curated
if not book_list.curation == "group":
book_list.update(group=None)
models.List.objects.filter(id=book_list.id).update(group=None)
return redirect(book_list.local_path)
@ -193,7 +193,7 @@ class List(View):
return redirect("list", book_list.id)
book_list = form.save()
if not book_list.curation == "group":
book_list.update(group=None)
models.List.objects.filter(id=book_list.id).update(group=None)
return redirect(book_list.local_path)