add optional select_related to sidebar_view

This commit is contained in:
Laura Klünder 2017-07-05 16:17:19 +02:00
parent cdbc88b48e
commit 90e8a6e995
3 changed files with 13 additions and 6 deletions

View file

@ -7,10 +7,15 @@ from django.views.decorators.cache import never_cache
from c3nav.editor.models import ChangeSet
def sidebar_view(func):
def sidebar_view(func=None, select_related=None):
if func is None:
def wrapped(inner_func):
return sidebar_view(inner_func, select_related)
return wrapped
@wraps(func)
def with_ajax_check(request, *args, **kwargs):
request.changeset = ChangeSet.get_for_request(request)
request.changeset = ChangeSet.get_for_request(request, select_related)
response = func(request, *args, **kwargs)
if request.is_ajax() or 'ajax' in request.GET:

View file

@ -16,7 +16,7 @@ from c3nav.editor.views.base import sidebar_view
from c3nav.mapdata.models.locations import LocationRedirect, LocationSlug
@sidebar_view
@sidebar_view(select_related=('last_update', 'last_state_update', 'author'))
def changeset_detail(request, pk):
changeset = request.changeset
active = True