【发布时间】:2021-08-07 20:18:22
【问题描述】:
我正在尝试从 Youtube 教程构建一个项目,但我不断收到此错误:AssertionError: 'MovieViewSet' should either include a `serializer_class` attribute, or override the `get_serializer_class()` method.
这是views.py 文件
class MovieViewSet(viewsets.ModelViewSet):
queryset = Movie.objects.all()
serializer_class = MovieSerializer
def list(self, request, *args, **kwargs):
movies = Movie.objects.all()
serializer = MovieSerializer(movies, many=True)
return Response(serializer.data)
这也是serializer.py 文件:
class MovieSerializer(serializers.ModelSerializer):
class Meta:
model = Movie
fields = ('id', 'title', 'desc', 'year')
我做错了什么?因为在我看来,我使用的是serializers_class ...
提前谢谢你!
【问题讨论】:
-
清理 .pyc 文件并重试。
-
@Sumithran 不起作用。我还删除了迁移和 db.sqlite3
-
我的意思是
__pycache__ -
@Sumithran 是的,我也是这个意思,不起作用...
标签: python django django-rest-framework django-views