forked from mirrors/bookwyrm
clean up List db queries
- don't unnecessarily query DB in List views - use more efficient query in remove_from_group List class method
This commit is contained in:
parent
5d7f77021b
commit
41f27a4a66
2 changed files with 3 additions and 8 deletions
|
@ -101,15 +101,10 @@ class List(OrderedCollectionMixin, BookWyrmModel):
|
||||||
def remove_from_group(cls, owner, user):
|
def remove_from_group(cls, owner, user):
|
||||||
"""remove a list from a group"""
|
"""remove a list from a group"""
|
||||||
|
|
||||||
memberships = GroupMember.objects.filter(group__user=owner, user=user).all()
|
cls.objects.filter(group__user=owner, user=user).all().update(
|
||||||
|
|
||||||
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"
|
group=None, curation="closed"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class ListItem(CollectionItemMixin, BookWyrmModel):
|
class ListItem(CollectionItemMixin, BookWyrmModel):
|
||||||
"""ok"""
|
"""ok"""
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,7 @@ class Lists(View):
|
||||||
book_list = form.save()
|
book_list = form.save()
|
||||||
# list should not have a group if it is not group curated
|
# list should not have a group if it is not group curated
|
||||||
if not book_list.curation == "group":
|
if not book_list.curation == "group":
|
||||||
models.List.objects.filter(id=book_list.id).update(group=None)
|
book_list.update(group=None)
|
||||||
|
|
||||||
return redirect(book_list.local_path)
|
return redirect(book_list.local_path)
|
||||||
|
|
||||||
|
@ -193,7 +193,7 @@ class List(View):
|
||||||
return redirect("list", book_list.id)
|
return redirect("list", book_list.id)
|
||||||
book_list = form.save()
|
book_list = form.save()
|
||||||
if not book_list.curation == "group":
|
if not book_list.curation == "group":
|
||||||
models.List.objects.filter(id=book_list.id).update(group=None)
|
book_list.update(group=None)
|
||||||
return redirect(book_list.local_path)
|
return redirect(book_list.local_path)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue