Ошибка Рефакторинг представлений в один ViewSet

Я заканчиваю свой первый курс RESTful Routes по TDD.

Сейчас я нахожусь на первой части Restful Routes, и нас просят рефакторить представления в один ViewSet.

Я следовал предоставленному руководству Django REST Framework Views - ViewSets и я объединил мои APIView'ы в ViewSet в моем файле views.py:

from django.shortcuts import get_object_or_404
from rest_framework.response import Response
from rest_framework.viewsets import ViewSet

class MovieViewSet(ViewSet):
    movies = Movie.objects.all()

    def list(self, request):
        serializer = ItemSerializer(self.queryset, many=True)
        return Response(serializer.data)

    def retrieve(self, request, pk=None):
        item = get_object_or_404(self.queryset, pk=pk)
        serializer = ItemSerializer(item)
        return Response(serializer.data)

У меня возникают трудности с обработкой URL-адресов.

# urls.py

from django.urls import path, include
from rest_framework import routers

from .views import MovieViewSet

router = routers.DefaultRouter()
router.register("api/movies/", MovieViewSet)

urlpatterns = [
    path("api/movies/", MovieViewSet),
    path('', include(router.urls)),
]

Здесь мы создали маршрутизатор (используя DefaultRouter, чтобы получить представление API по умолчанию) и зарегистрировали в нем ItemsViewSet. При создании маршрутизатора вы должны указать два аргумента:

Префикс URL для представлений Сам набор ViewSet Затем мы включили маршрутизатор внутрь urlpatterns.

.

В соответствии с этими инструкциями я думал, что мне нужно воссоздать url, который мы имели в APIView, т.е. http://localhost:8009/api/movies/, но я получаю следующую ошибку.

http: error: ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response')) whit', port=8000): Max retries exceeded with url: /api/movies/ (Caused by NewConnectionError('<urllib3.connection.HTTPConnect

Может ли кто-нибудь помочь?

Вернуться на верх