Exemple #1
0
 def list(self, request, *args, **kwargs):
     data = {
         "username": self.request.user.username,
         "name": self.request.user.name,
         "menus": get_menu_tree(self.request.user.get_view_permissions())
     }
     return Response(data)
Exemple #2
0
 def list(self, request, *args, **kwargs):
     data = {
         "username": self.request.user.username,
         "name": self.request.user.name,
         "menus": get_menu_tree(self.request.user.get_view_permissions())
     }
     return Response(data)
Exemple #3
0
    def list(self, request, *args, **kwargs):
        # 获取登陆用户的用户组信息
        user = self.request.user
        user_groups_obj = user.groups.values()
        user_groups_info = {}
        user_groups_infos = []
        from copy import deepcopy
        for group_obj in user_groups_obj:
            user_groups_info["gid"] = group_obj["id"]
            user_groups_info["gname"] = group_obj["name"]

            user_groups_infos.append(user_groups_info)
            # 需要深度复制 否则下次更改时会连之前的列表中的值一起更改
            user_groups_info = deepcopy(user_groups_info)

        # 如果登录用户是超级用户则返回所有的组ID
        if self.request.user.is_superuser:
            user_groups_infos = Group.objects.values()
            # print(user_groups_infos)
            data = {
                "username": self.request.user.username,
                "name": self.request.user.name,
                "is_superuser": self.request.user.is_superuser,
                "groupsinfo": user_groups_infos,
                "menus":
                get_menu_tree(self.request.user.get_view_permissions())
            }
        else:
            data = {
                "username": self.request.user.username,
                "name": self.request.user.name,
                "is_superuser": self.request.user.is_superuser,
                "groupsinfo": user_groups_infos,
                "menus":
                get_menu_tree(self.request.user.get_view_permissions())
            }

        return Response(data)