From 433d829c292841c5836d1548a2b43d56fc1b72a0 Mon Sep 17 00:00:00 2001 From: fit2bot <68588906+fit2bot@users.noreply.github.com> Date: Wed, 16 Mar 2022 20:36:12 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=B7=BB=E5=8A=A0profile=20myorgs=20(#7?= =?UTF-8?q?887)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: feng626 <1304903146@qq.com> --- apps/users/models/user.py | 4 ++++ apps/users/serializers/profile.py | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/users/models/user.py b/apps/users/models/user.py index 3ccf02fc9..67efa8b3c 100644 --- a/apps/users/models/user.py +++ b/apps/users/models/user.py @@ -790,6 +790,10 @@ class User(AuthMixin, TokenMixin, RoleMixin, MFAMixin, AbstractUser): orgs = [Organization.root()] + orgs return orgs + @property + def my_orgs(self): + return list(self.orgs.all().distinct()) + class Meta: ordering = ['username'] verbose_name = _("User") diff --git a/apps/users/serializers/profile.py b/apps/users/serializers/profile.py index 3434260e6..55083c23d 100644 --- a/apps/users/serializers/profile.py +++ b/apps/users/serializers/profile.py @@ -122,12 +122,13 @@ class UserProfileSerializer(UserSerializer): guide_url = serializers.SerializerMethodField() receive_backends = serializers.ListField(child=serializers.CharField(), read_only=True) orgs = UserOrgSerializer(many=True, read_only=True, source='all_orgs') + myorgs = UserOrgSerializer(many=True, read_only=True, source='my_orgs') perms = serializers.ListField(label=_("Perms"), read_only=True) class Meta(UserSerializer.Meta): read_only_fields = [ 'date_joined', 'last_login', 'created_by', 'source', - 'receive_backends', 'orgs', 'perms', + 'receive_backends', 'orgs', 'myorgs', 'perms', ] fields = UserSerializer.Meta.fields + [ 'public_key_comment', 'public_key_hash_md5', 'guide_url',