`basename`参数未指定,可能是'\

问题描述 投票:1回答:1

我一次又一次收到以下错误。我正在尝试从早上,但是什么也没发生。

assert queryset is not None,'basename参数未指定,并且可以'\ AssertionError:basename参数未指定,并且可以不会自动从视图集中确定名称,因为它不会具有.queryset属性。

models.py

class Language(models.Model):
    A = models.CharField(max_length=50)
    B = models.ForeignKey(User,on_delete=models.CASCADE,null=True)
    C = models.CharField(max_length=60)
    D = models.TextField(max_length=256)
    E = models.BooleanField(default=False)

serializers.py

class LanguageSerializer(serializers.ModelSerializer):
    class Meta:
        model = Language
        fields = ("__all__")

views.py

class LanguageView(viewsets.ModelViewSet):
    queryset = Language.objects.all()
    serializer_class = LanguageSerializer

urls.py

router = routers.DefaultRouter()
router.register('ln/languages', views.LanguageView)

[models.py中还有更多模型(表),其他所有模型(表)都是

可以很好地获得结果,但是语言模型(表)确实存在错误

assert queryset is not None,'basename参数未指定,并且可以'\ AssertionError:basename参数未指定,并且可以不会自动从视图集中确定名称,因为它不会具有.queryset属性。

django django-models django-rest-framework django-serializer
1个回答
0
投票

尝试一下

router.register('ln/languages', views.LanguageView, basename='ln-languages')

router.register('ln/languages', views.LanguageView, basename='languages')

更多详细信息,您可以查看文档django-rest-framework-routers

© www.soinside.com 2019 - 2024. All rights reserved.