【发布时间】:2026-01-26 05:05:01
【问题描述】:
我想从 User 模型中排除一些用户,他们存在于 friends、i_requested、requested_me 中。
models.py:
class Relation(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
friends = models.ManyToManyField(User, related_name='my_friends', blank=True)
i_requested = models.ManyToManyField(User, related_name='i_requested', blank=True)
requested_me = models.ManyToManyField(User, related_name='requested_me', blank=True)
views.py:
def allUser(request):
me = request.user
f = Relation.objects.get(user=me)
ff = f.friends.all()
users = User.objects.all()
exclude = users.exclude(id__in=ff)
print(exclude)
print(ff)
serializer = SimpleUserSerializer(user, many=True)
return Response(serializer.data)
当我运行这段代码时,它会打印:
为什么不排除 test5?
【问题讨论】: