remove the get_objects util
This commit is contained in:
parent
436434cc86
commit
20524c20d4
|
@ -91,7 +91,8 @@ class ComputersFilterView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
|||
filterset_class = ComputerFilter
|
||||
|
||||
def get_queryset(self):
|
||||
return utils.get_objects("Computer", self.request.user)
|
||||
return utils.get_all_objects_for_alLowed_customers(Computer,
|
||||
self.request.user)
|
||||
|
||||
|
||||
class ComputerCreateFromCustomerView(LoginRequiredMixin, CreateView):
|
||||
|
|
|
@ -4,9 +4,3 @@ import pytest
|
|||
from core import utils
|
||||
|
||||
pytestmark = pytest.mark.django_db
|
||||
|
||||
|
||||
def test_get_objects_raises_404(create_admin_user):
|
||||
fixture = create_admin_user()
|
||||
with pytest.raises(Http404):
|
||||
utils.get_objects("WrongModelName", fixture['admin'])
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
from django.apps import apps
|
||||
from django.http import Http404
|
||||
from django.shortcuts import get_object_or_404
|
||||
from guardian.shortcuts import get_objects_for_user
|
||||
|
@ -40,34 +39,6 @@ def _get_customers(user):
|
|||
klass=Customer)
|
||||
|
||||
|
||||
def get_objects(model_name, user):
|
||||
"""
|
||||
Returns a queryset of a given model name the user is allowed to view.
|
||||
|
||||
model_name: string
|
||||
user : django.contrib.auth.models.User
|
||||
"""
|
||||
model_name = model_name.lower()
|
||||
customers = _get_customers(user)
|
||||
app_names = [
|
||||
'backups',
|
||||
'computers',
|
||||
'core',
|
||||
'customers',
|
||||
'devices',
|
||||
'licenses',
|
||||
'nets',
|
||||
'softwares',
|
||||
'users',
|
||||
]
|
||||
for name in app_names:
|
||||
app = apps.get_app_config(name)
|
||||
if model_name in app.models:
|
||||
model = app.models[model_name]
|
||||
return model.objects.filter(customer__in=customers)
|
||||
raise Http404("Model ", model_name, " not found.")
|
||||
|
||||
|
||||
def get_object_with_view_permission(model, user=None, pk=None):
|
||||
requested_object = get_object_or_404(model, id=pk)
|
||||
permission = "customers.view_customer"
|
||||
|
|
|
@ -12,7 +12,7 @@ from django_tables2 import RequestConfig
|
|||
|
||||
from customers.decorators import customer_view_permission
|
||||
from customers.models import Customer
|
||||
from core.utils import get_objects
|
||||
from core import utils
|
||||
|
||||
from .decorators import device_view_permission
|
||||
|
||||
|
@ -59,7 +59,8 @@ def devices_table_view(request, pk):
|
|||
|
||||
@login_required
|
||||
def warranties_view(request):
|
||||
table = WarrantiesTable(get_objects("Warranty", request.user))
|
||||
table = WarrantiesTable(
|
||||
utils.get_all_objects_for_alLowed_customers(Warranty, request.user))
|
||||
RequestConfig(request).configure(table)
|
||||
return render(request,
|
||||
'devices/warranties_list.html',
|
||||
|
|
Loading…
Reference in New Issue