forked from 00dani/lemoncurry
Reduce number of queries required to render an entries list, especially the home page
This commit is contained in:
parent
957fc4ada7
commit
75e08aa1b2
4 changed files with 42 additions and 12 deletions
|
@ -16,11 +16,14 @@ def index(request, page):
|
|||
def url(page):
|
||||
kwargs = {'page': page} if page != 1 else {}
|
||||
return reverse('home:index', kwargs=kwargs)
|
||||
query = User.objects.prefetch_related('entries', 'profiles', 'keys')
|
||||
user = get_object_or_404(query, pk=1)
|
||||
entries = user.entries.filter(kind__in=kinds.on_home)
|
||||
|
||||
user = request.user
|
||||
if not user:
|
||||
user = get_object_or_404(User, pk=1)
|
||||
|
||||
entries = user.entries.filter(kind__in=kinds.on_home)
|
||||
entries = pagination.paginate(queryset=entries, reverse=url, page=page)
|
||||
|
||||
# If we got a valid HTTP response, just return it without rendering.
|
||||
if hasattr(entries, 'content'):
|
||||
return entries
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue