AssertionError:字段“links”已在序列化程序SprintSerializer上声明,但尚未包含在“fields”选项中

2024-10-01 17:31:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我在复制朱莉娅·埃尔曼书中的例子时遇到了问题 模型.py在

class Sprint(models.Model):

    name = models.CharField(max_length=100, blank=True, default='')
    description = models.TextField(blank=True, default='')
    end = models.DateField(unique=True)

    def __str__(self):
        return self.name or _('Sprint ending %s') % self.end

在序列化程序.py在

^{pr2}$

在视图.py在

from django.contrib.auth import get_user_model
from rest_framework import authentication, permissions, viewsets
from .models import Sprint,Task
from .serializers import SprintSerializer,TaskSerializer, UserSerializer

User = get_user_model()

class DefaultsMixin(object):
    authentication_classes = (authentication.BasicAuthentication,authentication.TokenAuthentication,)   
    permission_classes = (permissions.IsAuthenticated,)
    paginate_by = 25
    paginate_by_param = 'page_size'
    max_paginate_by = 100

class SprintViewSet(DefaultsMixin, viewsets.ModelViewSet):
    queryset = Sprint.objects.order_by('end')
    serializer_class = SprintSerializer

我试着从壳牌公司找雷普

from board.serializers import SprintSerializer
>>> s = SprintSerializer()
>>> print (repr(s))

但我有问题

AssertionError: The field 'links' was declared on serializer SprintSerializer, but has not been included in the 'fields' option.

我的DRF

print (rest_framework.VERSION)
3.8.2

如何调试此问题?在


Tags: namefrompyimportselftrueauthenticationby

热门问题