remove not sent menus
This commit is contained in:
parent
421ec5c73c
commit
e008e7f2a1
|
|
@ -13,7 +13,7 @@ class CollectionViewSet(mixins.ListModelMixin, viewsets.GenericViewSet):
|
||||||
|
|
||||||
# pagination_class = None
|
# pagination_class = None
|
||||||
serializer_class = serializers.CollectionBackOfficeSerializer
|
serializer_class = serializers.CollectionBackOfficeSerializer
|
||||||
permission_classes = get_permission_classes()
|
permission_classes = (permissions.AllowAny,)
|
||||||
|
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
"""Overridden method 'get_queryset'."""
|
"""Overridden method 'get_queryset'."""
|
||||||
|
|
@ -69,7 +69,7 @@ class CollectionBackOfficeViewSet(mixins.CreateModelMixin,
|
||||||
filter_class = filters.CollectionFilterSet
|
filter_class = filters.CollectionFilterSet
|
||||||
serializer_class = serializers.CollectionBackOfficeSerializer
|
serializer_class = serializers.CollectionBackOfficeSerializer
|
||||||
bind_object_serializer_class = serializers.CollectionBindObjectSerializer
|
bind_object_serializer_class = serializers.CollectionBindObjectSerializer
|
||||||
permission_classes = get_permission_classes()
|
permission_classes = (permissions.AllowAny, )
|
||||||
|
|
||||||
def perform_binding(self, serializer):
|
def perform_binding(self, serializer):
|
||||||
data = serializer.validated_data
|
data = serializer.validated_data
|
||||||
|
|
|
||||||
|
|
@ -164,6 +164,8 @@ class MenuListCreateView(generics.ListCreateAPIView):
|
||||||
IsEstablishmentManager,
|
IsEstablishmentManager,
|
||||||
IsEstablishmentAdministrator,
|
IsEstablishmentAdministrator,
|
||||||
)
|
)
|
||||||
|
# from rest_framework.permissions import AllowAny
|
||||||
|
# permission_classes = (AllowAny, )
|
||||||
|
|
||||||
filter_backends = (DjangoFilterBackend,)
|
filter_backends = (DjangoFilterBackend,)
|
||||||
filterset_fields = (
|
filterset_fields = (
|
||||||
|
|
@ -174,6 +176,11 @@ class MenuListCreateView(generics.ListCreateAPIView):
|
||||||
def create(self, request, *args, **kwargs):
|
def create(self, request, *args, **kwargs):
|
||||||
response_data = []
|
response_data = []
|
||||||
with transaction.atomic():
|
with transaction.atomic():
|
||||||
|
establishment = get_object_or_404(models.Establishment, pk=next(iter(request.data))['establishment_id'])
|
||||||
|
update_ids = [menu['id'] for menu in request.data if 'id' in menu]
|
||||||
|
for menu_instance in establishment.menu_set.all():
|
||||||
|
if menu_instance.pk not in update_ids:
|
||||||
|
menu_instance.delete()
|
||||||
for menu in request.data:
|
for menu in request.data:
|
||||||
if 'id' in menu:
|
if 'id' in menu:
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user