Skip to content

Commit f32ba4d

Browse files
authored
Cache project (#8231)
1 parent 9ba4fb1 commit f32ba4d

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

readthedocs/projects/views/base.py

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
1-
# -*- coding: utf-8 -*-
2-
31
"""Mix-in classes for project views."""
42
import logging
53
from datetime import timedelta
4+
from functools import lru_cache
65

76
from django.conf import settings
87
from django.http import HttpResponseRedirect
98
from django.shortcuts import get_object_or_404
109
from django.urls import reverse
1110
from django.utils import timezone
1211

13-
from ..exceptions import ProjectSpamError
14-
from ..models import Project
15-
12+
from readthedocs.projects.exceptions import ProjectSpamError
13+
from readthedocs.projects.models import Project
1614

1715
log = logging.getLogger(__name__)
1816

@@ -64,6 +62,7 @@ def get_queryset(self):
6462
self.project = self.get_project()
6563
return self.model.objects.filter(project=self.project)
6664

65+
@lru_cache(maxsize=1)
6766
def get_project(self):
6867
"""Return project determined by url kwarg."""
6968
if self.project_url_field not in self.kwargs:

0 commit comments

Comments
 (0)