mirror of
https://github.com/nottinghamtec/PyRIGS.git
synced 2026-02-02 13:22:17 +00:00
Refactored out duplicated code from `AssetVersionHistory
This commit is contained in:
@@ -206,17 +206,14 @@ class VersionHistory(generic.ListView):
|
|||||||
paginate_by = 25
|
paginate_by = 25
|
||||||
|
|
||||||
def get_queryset(self, **kwargs):
|
def get_queryset(self, **kwargs):
|
||||||
thisModel = self.kwargs['model']
|
return RIGSVersion.objects.get_for_object(self.get_object()).select_related("revision", "revision__user").all()
|
||||||
|
|
||||||
versions = RIGSVersion.objects.get_for_object_reference(thisModel, self.kwargs['pk']).select_related("revision", "revision__user").all()
|
def get_object(self, **kwargs):
|
||||||
|
return get_object_or_404(self.kwargs['model'], pk=self.kwargs['pk'])
|
||||||
return versions
|
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
thisModel = self.kwargs['model']
|
|
||||||
context = super(VersionHistory, self).get_context_data(**kwargs)
|
context = super(VersionHistory, self).get_context_data(**kwargs)
|
||||||
thisObject = get_object_or_404(thisModel, pk=self.kwargs['pk'])
|
context['object'] = self.get_object()
|
||||||
context['object'] = thisObject
|
|
||||||
|
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ from django.views.decorators.csrf import csrf_exempt
|
|||||||
from django.utils.decorators import method_decorator
|
from django.utils.decorators import method_decorator
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
|
from django.shortcuts import get_object_or_404
|
||||||
from assets import models, forms
|
from assets import models, forms
|
||||||
from RIGS import versioning
|
from RIGS import versioning
|
||||||
|
|
||||||
@@ -214,29 +215,8 @@ class SupplierVersionHistory(versioning.VersionHistory):
|
|||||||
|
|
||||||
# TODO: Reduce SQL queries
|
# TODO: Reduce SQL queries
|
||||||
class AssetVersionHistory(versioning.VersionHistory):
|
class AssetVersionHistory(versioning.VersionHistory):
|
||||||
model = versioning.RIGSVersion
|
def get_object(self, **kwargs):
|
||||||
template_name = "asset_version_history.html"
|
return get_object_or_404(models.Asset, asset_id=self.kwargs['pk'])
|
||||||
paginate_by = 25
|
|
||||||
|
|
||||||
def get_queryset(self, **kwargs):
|
|
||||||
thisModel = self.kwargs['model']
|
|
||||||
pk = self.kwargs['pk']
|
|
||||||
versions = versioning.RIGSVersion.objects.get_for_object(models.Asset.objects.filter(asset_id=pk).get()).select_related("revision", "revision__user").all()
|
|
||||||
|
|
||||||
return versions
|
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
|
||||||
thisModel = self.kwargs['model']
|
|
||||||
context = super(versioning.VersionHistory, self).get_context_data(**kwargs)
|
|
||||||
queryset = models.Asset.objects.filter(asset_id=self.kwargs['pk'])
|
|
||||||
try:
|
|
||||||
# Get the single item from the filtered queryset
|
|
||||||
context['object'] = queryset.get()
|
|
||||||
except queryset.model.DoesNotExist:
|
|
||||||
raise Http404(_("No %(verbose_name)s found matching the query") %
|
|
||||||
{'verbose_name': queryset.model._meta.verbose_name})
|
|
||||||
|
|
||||||
return context
|
|
||||||
|
|
||||||
|
|
||||||
class ActivityTable(versioning.ActivityTable):
|
class ActivityTable(versioning.ActivityTable):
|
||||||
|
|||||||
Reference in New Issue
Block a user