Пример #1
0
def init_user(user):
    default_auth_group = SysConfig().get('default_auth_group', '')
    if default_auth_group:
        try:
            group = Group.objects.get(name=default_auth_group)
            user.groups.add(group)
        except Exception:
            logger.error(traceback.format_exc())
            logger.error(
                '无name为{}的权限组,无法默认关联,请到系统设置进行配置'.format(default_auth_group))
    # 添加到默认资源组
    default_resource_group = SysConfig().get('default_resource_group', '')
    if default_resource_group:
        try:
            new_relation = ResourceGroupRelations(
                object_type=0,
                object_id=user.id,
                object_name=str(user),
                group_id=ResourceGroup.objects.get(
                    group_name=default_resource_group).group_id,
                group_name=default_resource_group)
            new_relation.save()
        except Exception:
            logger.error(traceback.format_exc())
            logger.error('无name为{}的资源组,无法默认关联,请到系统设置进行配置'.format(
                default_resource_group))
Пример #2
0
def init_user(user):
    """
    给用户关联默认资源组和权限组
    :param user:
    :return:
    """
    default_auth_group = SysConfig().get('default_auth_group', '')
    if default_auth_group:
        try:
            group = Group.objects.get(name=default_auth_group)
            user.groups.add(group)
        except Group.DoesNotExist:
            logger.info(f'无name为[{default_auth_group}]的权限组,无法默认关联,请到系统设置进行配置')
    # 添加到默认资源组
    default_resource_group = SysConfig().get('default_resource_group', '')
    if default_resource_group:
        try:
            new_relation = ResourceGroupRelations(
                object_type=0,
                object_id=user.id,
                object_name=str(user),
                group_id=ResourceGroup.objects.get(
                    group_name=default_resource_group).group_id,
                group_name=default_resource_group)
            new_relation.save()
        except ResourceGroup.DoesNotExist:
            logger.info(
                f'无name为[{default_resource_group}]的资源组,无法默认关联,请到系统设置进行配置')
Пример #3
0
def addrelation(request):
    """
    type:(0, '用户'), (1, '实例')
    """
    group_id = int(request.POST.get('group_id'))
    object_type = request.POST.get('object_type')
    object_list = json.loads(request.POST.get('object_info'))
    group_name = ResourceGroup.objects.get(group_id=group_id).group_name
    try:
        ResourceGroupRelations.objects.bulk_create(
            [ResourceGroupRelations(object_id=int(object.split(',')[0]),
                                    object_type=object_type,
                                    object_name=object.split(',')[1],
                                    group_id=group_id,
                                    group_name=group_name) for object in object_list])
        result = {'status': 0, 'msg': 'ok'}
    except Exception as e:
        logger.error(traceback.format_exc())
        result = {'status': 1, 'msg': str(e)}
    return HttpResponse(json.dumps(result), content_type='application/json')