Skip to content
Snippets Groups Projects
Commit 2651e7cc authored by Todd Dembrey's avatar Todd Dembrey
Browse files

Make sure we dont waste queries on the activities

parent e7c7ace2
No related branches found
No related tags found
No related merge requests found
......@@ -13,9 +13,18 @@ ACTIVITY_LIMIT = 50
class AllActivityContextMixin:
def get_context_data(self, **kwargs):
extra = {
'actions': Activity.actions.filter(submission__in=self.object_list)[:ACTIVITY_LIMIT],
'comments': Activity.comments.filter(submission__in=self.object_list[:ACTIVITY_LIMIT]),
'all_activity': Activity.objects.filter(submission__in=self.object_list)[:ACTIVITY_LIMIT],
'actions': Activity.actions.filter(submission__in=self.object_list).select_related(
'submission',
'user',
)[:ACTIVITY_LIMIT],
'comments': Activity.comments.filter(submission__in=self.object_list).select_related(
'submission',
'user',
)[:ACTIVITY_LIMIT],
'all_activity': Activity.objects.filter(submission__in=self.object_list).select_related(
'submission',
'user',
)[:ACTIVITY_LIMIT],
}
return super().get_context_data(**extra, **kwargs)
......@@ -23,8 +32,12 @@ class AllActivityContextMixin:
class ActivityContextMixin:
def get_context_data(self, **kwargs):
extra = {
'actions': Activity.actions.filter(submission=self.object).visible_to(self.request.user),
'comments': Activity.comments.filter(submission=self.object).visible_to(self.request.user),
'actions': Activity.actions.filter(submission=self.object).select_related(
'user',
).visible_to(self.request.user),
'comments': Activity.comments.filter(submission=self.object).select_related(
'user',
).visible_to(self.request.user),
}
return super().get_context_data(**extra, **kwargs)
......
......@@ -21,7 +21,7 @@
<div class="wrapper wrapper--large wrapper--inner-space-medium">
{% if object_list|length > 0 or active_filters %}
{% if table.data or active_filters %}
<div class="button button--filters button--contains-icons js-open-filters">Filter By</div>
<div class="filters js-filter-wrapper">
......
......@@ -20,8 +20,8 @@ from .models import Review
class ReviewContextMixin:
def get_context_data(self, **kwargs):
staff_reviews = self.object.reviews.by_staff()
reviewer_reviews = self.object.reviews.by_reviewers().exclude(id__in=staff_reviews)
staff_reviews = self.object.reviews.by_staff().select_related('author')
reviewer_reviews = self.object.reviews.by_reviewers().exclude(id__in=staff_reviews).select_related('author')
return super().get_context_data(
staff_reviews=staff_reviews,
reviewer_reviews=reviewer_reviews,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment