def suggest(): request.authz.require(request.authz.logged_in) prefix = stringify(request.args.get('prefix')) if prefix is None or len(prefix) < 3: # Do not return 400 because it's a routine event. return jsonify({ 'status': 'error', 'message': 'prefix filter is too short', 'results': [], 'total': 0 }) # this only returns users, not groups q = Role.by_prefix(prefix) return jsonify(Pager(q, limit=10))
def suggest(): require(request.authz.logged_in) parser = QueryParser(request.args, request.authz, limit=10) if parser.prefix is None or len(parser.prefix) < 3: # Do not return 400 because it's a routine event. return jsonify({ 'status': 'error', 'message': 'prefix filter is too short', 'results': [], 'total': 0 }) # this only returns users, not groups q = Role.by_prefix(parser.prefix) result = DatabaseQueryResult(request, q, parser=parser, schema=RoleSchema) return jsonify(result)
def suggest(): require(request.authz.logged_in) parser = QueryParser(request.args, request.authz, limit=10) if parser.prefix is None or len(parser.prefix) < 3: # Do not return 400 because it's a routine event. return jsonify({ 'status': 'error', 'message': gettext('prefix filter is too short'), 'results': [], 'total': 0 }) # this only returns users, not groups q = Role.by_prefix(parser.prefix, exclude=parser.exclude) result = DatabaseQueryResult(request, q, parser=parser) return RoleSerializer.jsonify_result(result)
def suggest(): """ --- get: summary: Suggest users matching a search prefix description: >- For a given `prefix`, suggest matching user accounts. For security reasons, the prefix must be more than three characters long. parameters: - in: query name: prefix required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: object allOf: - $ref: '#/components/schemas/QueryResponse' properties: results: type: array items: $ref: '#/components/schemas/Role' tags: - Role """ require(request.authz.logged_in) parser = QueryParser(request.args, request.authz, limit=10) if parser.prefix is None or len(parser.prefix) < 3: # Do not return 400 because it's a routine event. return jsonify({ "status": "error", "message": gettext("prefix filter is too short"), "results": [], "total": 0, }) # this only returns users, not groups exclude = ensure_list(parser.excludes.get("id")) q = Role.by_prefix(parser.prefix, exclude=exclude) result = DatabaseQueryResult(request, q, parser=parser) return RoleSerializer.jsonify_result(result)