#django #django-rest-framework
Вопрос:
Я использую платформу Django Rest, и мне нужно удалить несколько записей на основе поля «контрато».
View.py
class AlugueisViewSet(viewsets.ModelViewSet):
filter_backends = (filters.SearchFilter,DjangoFilterBackend)
queryset = Alugueis.objects.all()
serializer_class = AlugueisSerializer
filterset_fields = {
'contrato':['exact']
}
Отправить
URL-адрес запроса: http://127.0.0.1:8000/alugueis/?id=amp;contrato=174
Способ запроса: УДАЛИТЬ
Код статуса: 405 Метод Не Разрешен
Удаленный адрес: 127.0.0.1:8000
Политика реферера: строгое-происхождение-когда-перекрестное происхождение
Ответ №1:
вы можете установить lookup_field
, как показано ниже:
class AlugueisViewSet(viewsets.ModelViewSet):
filter_backends = (filters.SearchFilter,DjangoFilterBackend)
queryset = Alugueis.objects.all()
serializer_class = AlugueisSerializer
filterset_fields = {
'contrato':['exact']
}
lookup_field = 'contrato'
Комментарии:
1. ошибка УДАЛЕНИЯ: get() вернул более одного Alugueis-он вернул 6!