1
0
mirror of https://gitlab.crans.org/bde/nk20 synced 2025-04-28 17:42:57 +00:00

fix permission bug

This commit is contained in:
quark 2025-04-27 16:54:58 +02:00
parent a2b42c5329
commit 4115e49e4b
2 changed files with 7 additions and 5 deletions

View File

@ -52,7 +52,7 @@
"model": "food.allergen", "model": "food.allergen",
"pk": 8, "pk": 8,
"fields": { "fields": {
"name": "Céléri" "name": "Céleri"
} }
}, },
{ {

View File

@ -8,7 +8,7 @@ from django_tables2.views import MultiTableMixin
from django.db import transaction from django.db import transaction
from django.db.models import Q from django.db.models import Q
from django.http import HttpResponseRedirect from django.http import HttpResponseRedirect
from django.views.generic import DetailView, UpdateView from django.views.generic import DetailView, UpdateView, CreateView
from django.views.generic.list import ListView from django.views.generic.list import ListView
from django.urls import reverse_lazy from django.urls import reverse_lazy
from django.utils import timezone from django.utils import timezone
@ -106,7 +106,7 @@ class FoodListView(ProtectQuerysetMixin, LoginRequiredMixin, MultiTableMixin, Li
return context return context
class QRCodeCreateView(ProtectQuerysetMixin, ProtectedCreateView): class QRCodeCreateView(ProtectQuerysetMixin, CreateView):
""" """
A view to add qrcode A view to add qrcode
""" """
@ -385,7 +385,8 @@ class BasicFoodDetailView(FoodDetailView):
return context return context
def get(self, *args, **kwargs): def get(self, *args, **kwargs):
kwargs['stop_redirect'] = (Food.objects.get(pk=kwargs['pk']).polymorphic_ctype.model == 'basicfood') if Food.objects.filter(pk=kwargs['pk']).count() == 1:
kwargs['stop_redirect'] = (Food.objects.get(pk=kwargs['pk']).polymorphic_ctype.model == 'basicfood')
return super().get(*args, **kwargs) return super().get(*args, **kwargs)
@ -404,5 +405,6 @@ class TransformedFoodDetailView(FoodDetailView):
return context return context
def get(self, *args, **kwargs): def get(self, *args, **kwargs):
kwargs['stop_redirect'] = (Food.objects.get(pk=kwargs['pk']).polymorphic_ctype.model == 'transformedfood') if Food.objects.filter(pk=kwargs['pk']).count() == 1:
kwargs['stop_redirect'] = (Food.objects.get(pk=kwargs['pk']).polymorphic_ctype.model == 'transformedfood')
return super().get(*args, **kwargs) return super().get(*args, **kwargs)