def dispatch_auth(): form = DispatchAuth() form.validate_for_api() one = manager.auth_model.get(group_id=form.group_id.data, auth=form.auth.data) if one: raise Forbidden(msg='已有权限,不可重复添加') meta = find_auth_module(form.auth.data) manager.auth_model.create(group_id=form.group_id.data, auth=meta.auth, module=meta.module, commit=True) return Success(msg='添加权限成功')
def dispatch_auths(): form = DispatchAuths() form.validate_for_api() with db.auto_commit(): for auth in form.auths.data: one = manager.auth_model.get(group_id=form.group_id.data, auth=auth) if not one: meta = find_auth_module(auth) manager.auth_model.create(group_id=form.group_id.data, auth=meta.auth, module=meta.module) return Success(msg='添加权限成功')
def create_group(): form = NewGroup().validate_for_api() exist = manager.group_model.get(name=form.name.data) if exist: raise Forbidden(msg='分组已存在,不可创建同名分组') with db.auto_commit(): group = manager.group_model.create(name=form.name.data, info=form.info.data) db.session.flush() for auth in form.auths.data: meta = find_auth_module(auth) if meta: manager.auth_model.create(auth=meta.auth, module=meta.module, group_id=group.id) return Success(msg='新建分组成功')