【发布时间】:2021-06-11 20:46:06
【问题描述】:
我有一个带有blocked 字段的自定义用户模型
class User(AbstractUser):
username = None
email = models.EmailField(_('email address'), unique=True)
USERNAME_FIELD = 'email'
REQUIRED_FIELDS = []
blocked = models.ManyToManyField("User", related_name="blocked_by", blank=True)
我正在尝试使用一个序列化程序,我可以在其中通过用户 ID 查找用户,并了解他们是否被登录用户阻止
我目前是序列化器
class UserSerializer(serializers.ModelSerializer):
is_blocked = serializers.BooleanField() # need to populate this
class Meta:
model = User
fields = ['id', 'email', 'user_type', 'is_blocked']
我的看法
class UserDetail(generics.RetrieveAPIView):
authentication_classes = (authentication.JWTAuthentication,)
permission_classes = (permissions.IsAuthenticated,)
serializer_class = UserSerializer
queryset = User.objects.all()
我只是不确定如何填充该值,以便查询的用户是否在登录用户的blocked manyToMany 字段中
【问题讨论】:
标签: django django-models django-rest-framework django-serializer