簡體   English   中英

Django QuerySet 選擇相關對象

[英]Django QuerySet select related objects

我四處尋找,但沒有找到像我這樣的情況。 假設使用 Django 的 User Profile 方法來擴展默認用戶功能,多對象查詢集將如何映射相關對象的查詢集。

例如(在模型中):

class UserProfile(models.Model):
     user = models.OneToOneField(User, on_delete=models.CASCADE)

     friends = models.ManyToManyField("self", symmetrical=True, blank=True)

在視圖內部:

class Friends(generics.ListAPIView):

    queryset=User.objects.all()
    serializer_class = UserSerializer

    def get_queryset(self):
        user = self.request.user
        profile = user.userprofile
        profiles = profile.friends.all()
        return profiles  #We want this to be a queryset of users

我嘗試了以下方法,但這僅適用於profiles大小為 1 的情況。

return User.objects.filter(userprofile=profiles)
 return User.objects.filter(userprofile__in=profiles)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM